首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >读取multipart/form-data时出现"multipart: NextPart: EOF“错误

读取multipart/form-data时出现"multipart: NextPart: EOF“错误
EN

Stack Overflow用户
提问于 2021-10-21 09:48:07
回答 1查看 149关注 0票数 0

我正在为一个API构建一个路由器层,在那里我获取响应并从请求主体中提取一个参数(在本例中是一个service_code,名称可以变化- service_codeserviceCodecode需要处理所有参数),并将其传递给需要它的服务。数据可以是原始json格式的application/json、查询参数、路径参数,也可以是表单数据multipart/form-data。我可以对其他服务执行此操作,但对于表单,当我将有效负载传递到目标服务时,我会收到错误multipart: NextPart: EOF

下面是我读取数据的方式:

代码语言:javascript
运行
复制
c.MultipartForm()
postForm := c.Request.PostForm
queryParams := c.Request.URL.Query()
route := c.Request.URL.Path
body, _ := ioutil.ReadAll(c.Request.Body)

serviceCode, destUrl, payload := getCityCode(queryParams, route, body, postForm)

然后我将这个有效负载传递给http.NewRequest

代码语言:javascript
运行
复制
http.NewRequest(method, destUrl, strings.NewReader(payload))

当我读取数据时,在目的地:

代码语言:javascript
运行
复制
data := models.Data{}
err := c.Bind(&data); err != nil {
  c.JSON(400, gin.H{"error": err.Error()})
  return
}

错误是multipart: NextPart: EOF。谁来帮帮忙!

EN

回答 1

Stack Overflow用户

发布于 2021-10-23 04:57:46

当表单为空时会出现此错误,因为您在绑定表单之前使用ioutil读取了所有流数据。在绑定后,您应该更改代码以使用所需的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69659662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档