我正在尝试使用Insomnia REST客户端上传包含multipart / form-data的文件。但是上传的文件带有标题。
文件内容为:
<?xml version="1.0" encoding="utf-8"?>
<PresetGroup xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Presets>
...
我处理上传分段的代码:
if err = r.ParseMultipartForm(32 << 20); nil != err {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
r.ParseMultipartForm(32 << 20)
file, _, err := r.FormFile("file")
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
defer file.Close()
reader = io.Reader(file)
现在,当我处理读取器并写入文件时,文件变为:
--X-INSOMNIA-BOUNDARY
Content-Disposition: form-data; name="file"; filename="presets.xml" Content-Type: application/octet-stream
<?xml version="1.0" encoding="utf-8"?>
<PresetGroup xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Presets>
...
为什么将content-type
和边界添加(前置)到文件中?我该如何避免呢?