spring - 文件上传 API 在 Postman 中有效,但在 React JS 中无效

标签 spring reactjs file upload postman

我目前正在开发 Java spring boot 和 React JS 应用程序,并尝试将文件上传到服务器。我的 spring 端点如下所示:

@PostMapping("/uploadFile")
public UploadFileResponse uploadFile(@RequestParam("file") MultipartFile file) {

我的前端代码如下所示:
let formData = new FormData();
    formData.append('file', file);

    let xhr = new XMLHttpRequest();
    xhr.open("POST", "/api/uploadFile");
    xhr.send(formData);

当我在 Postman 中提交请求时,正文选择为表单数据和文件键,一切正常,我的文件上传到服务器。

但是,当我使用前端代码尝试相同的事情时,服务器说:
Required request part 'file' is not present

我试过在网上搜索,似乎我做的一切都是正确的。我知道我的服务器端代码是正确的,因为该请求适用于 Postman。

任何见解表示赞赏!

最佳答案

尝试从 XMLHttpRequest 中完全删除标题如果它出现在那里,或者将标题保留为空对象 {}没有 Content-Type属性(property)。

关于spring - 文件上传 API 在 Postman 中有效,但在 React JS 中无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52635286/

相关文章:

java - Spring 依赖注入(inject)和插件 Jar

javascript - React - 异步 api 调用,Promise.all 等待调用完成

reactjs - 如何使用详尽的 deps lint 规则来安装/卸载效果

file - 在Powershell脚本中将文件从一个位置复制到另一位置,此外还要检查某些值

c - 将结构传递给另一个 .c 文件中的函数,但它不指向正确的结构

java - Spring 安全 POST 方法抛出 403 错误

forms - 在 spring mvc 的模型属性中保留值

java - 将 spring Controller 绑定(bind)到根 Controller

reactjs - HashRouter 没有匹配位置的路线

c - FILE* 返回初始化变量并插入 FILE* 读取的输出