在使用 golang gin 实现一个文件上传并解析的功能时,报错:
request Content-Type isn't multipart/form-data
模板代码
<form action="/upload" method="post">
<input type="file" class="form-control-file" id="csv" name="csv">
<button type="submit" class="btn btn-primary">提交</button>
</form>
golang 逻辑代码
报错处:
file, header, err := c.Request.FormFile("csv")
if err != nil {
c.String(http.StatusBadRequest, fmt.Sprintf("file err : %s", err.Error()))
return
}
解决方法
在 form 标签增加属性 enctype="multipart/form-data",即
<form action="/upload" method="post" enctype="multipart/form-data">
enctype 属性有哪些值
- application/x-www-form-urlencoded (默认值):在发送前编码所有字符
- multipart/form-data:不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。
- text/plain:空格转换为 "+" 加号,但不对特殊字符编码。
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式