fetch上传文件报错的问题(multipart: NextPart: EOF)

简介: 技术栈后台: gin(golang)前端: react+antd+dva问题前端这边使用fetch发送http请求的时候,后端解析formData报错:multipart: NextPart: EOF分析问题原因是上传文件太小了Content-Length数量太小了,尝试将headers里这字段的value变大,发现实际的请求依然是较小值。

技术栈

  • 后台: gin(golang)
  • 前端: react+antd+dva

问题

前端这边使用fetch发送http请求的时候,后端解析formData报错:

multipart: NextPart: EOF

分析问题

原因是上传文件太小了Content-Length数量太小了,尝试将headers里这字段的value变大,发现实际的请求依然是较小值。

解决方法

检查fetch参数的headers有没有自动添加Content-Type, 有的话去掉。参考此篇文章,默认设置了Content-Type还有其他的字段时会引起fetch无法控制你的Content-Type

image.png

起因

查看Antd里的上传文件的demo, 发现里边使用的是reqwst上传,而我本地用的是Antd pro封装的request(fetch),按照demo,formData放在data字段,而fetch应该接受的是body字段。但是服务端报错说的是Content-Type未识别,所以才手贱去加Content-Type引发了一系列报错···

参考链接

点此查看

相关文章
|
2月前
|
缓存 前端开发
后端MultipartFile接收文件转Base64
后端MultipartFile接收文件转Base64
40 5
|
8月前
|
Java
【Java报错】MultipartFile 类型文件上传 Current request is not a multipart request 问题处理(postman添加MultipartFile)
【Java报错】MultipartFile 类型文件上传 Current request is not a multipart request 问题处理(postman添加MultipartFile)
700 0
|
8月前
|
前端开发 JavaScript
Error_ Multipart_ Boundary not foun
Error_ Multipart_ Boundary not foun
118 0
|
Java 应用服务中间件 Linux
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
1612 0
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
|
定位技术
QT QHttpMultiPart上传总结
QT QHttpMultiPart上传总结
518 0
|
Python
Python Request POST 上传文件 Multipart/form-data
Python Request POST 上传文件 Multipart/form-data
772 0
Python Request POST 上传文件 Multipart/form-data
C#使用HttpClient上传文件(multipart表单)
C#使用HttpClient上传文件(multipart表单)
3707 0
|
前端开发
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
436 0
.NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
|
移动开发 Serverless
如何在函数计算中使用 Node.js 处理 multipart 文件上传请求
## 前言 web 开发中我们经常会允许用户通过 HTTP POST 请求上传文档到服务器,如何使用函数计算来做文件上传服务呢?下面我们使用 nodejs 来实现一个文件上传的案例: 我们知道浏览器中上传文档通常会使用 `multipart` `form-data` 来多文件同时上传文件。 例如,我们可以使用curl来做这个测试模拟上传两个文件: `test.txt` 和 `inde
2150 0