angular - 在 Angular 中成功 POST 后的 HttpErrorResponse 200

标签 angular upload

我通过 FormData 将一个文件从 Angular 5.xx 上传到 Jersey 1.xx。

数据已成功接收并保存在我的服务器应用程序目录中,但浏览器显示图片中的这一行(Chrome 和 Firefox)。

当我像这样仅通过 HTML 上传它时:

  Choose file to upload<br>
    <form action="http://localhost:8181/BackendMaven" method="post" enctype="multipart/form-data">
        <input name="input" id="filename" type="file" /><br><br>
        <button name="submit" type="submit">Upload</button>
    </form>

它不会出现。

这是 Angular FromData 代码:

@ViewChild('fileInput') fileInput; 
submitFile(): void{ 
    console.log("submitFIle called!!!");
    let fi = this.fileInput.nativeElement;
     let fileToUpload = fi.files[0];
     let formData = new FormData();//empty formdata
     formData.append("input", fileToUpload);
     console.log(formData.get("input"));
     this.http.post(this.URI_UPLOAD,formData).subscribe();}

和服务器端(我使用 tomcat)

public Response uploadFile(@FormDataParam("input") InputStream uploadedInputStream, @FormDataParam("input") FormDataContentDisposition fileDetail) {
  ...
        return Response.status(200).entity("Successfully uploaded to location: " + FileFactory.getFilePath(uploadedFileLocation)).build();

    }

} 

enter image description here

最佳答案

尝试实际发送一个 JSON 响应,或者告诉 Angular 期待一些不同的东西。如果您使用 HttpClient , 它默认需要 JSON。

像这样:

this.http.post(url, body, { responseType: 'text' }).subscribe();

关于angular - 在 Angular 中成功 POST 后的 HttpErrorResponse 200,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47378340/

相关文章:

java - 如何在 Java 中使用 Selenium WebDriver 上传文件

javascript - 类型错误 : Cannot read property 'Autocomplete' of undefined in Angular 2

node.js - vue express 上传多个文件到amazon s3

java - Android:使用 Apache 服务器将图像上传到 Web 服务时出现问题

javascript - 为什么在这个 angular 2 组件中调用了两次服务?

upload - vaadin] 在上传组件中,当没有选择文件事件时点击上传按钮

asp.net-mvc - 使用 ASP.NET MVC 上传图像

Angular HTTP拦截器如何链接一个可观察的

angular - 获取颜色选择器的变化值

angular - ionic 无限滚动 : TypeError: Cannot read property '0' of undefined