使用Postman Chrome扩展发送多部分/混合内容
我努力用Postman Chrome扩展创buildPOST多部分/混合请求
这是我的curl请求什么很好
curl -H "Content-Type: multipart/mixed" -F "metadata=@simple_json.json; type=application/json " -F "content=@1.jpg; type=image/jpg" -X POST http://my/api/item -i -v
有意思的部分回应
内容长度:41557
期待:100-继续
内容types:multipart / mixed; 边界= —————————- 8aaca457e117
- 额外的东西不好转c:1037:0 0
- 具有持续连接的HTTP 1.1或更高版本,支持stream水线
而当我使用邮差
我得到这样的回应
{"message":"Could not parse multipart servlet request; nested exception is org.apache.commons.fileupload.FileUploadException: the request was rejected because no multipart boundary was found","type":"error","status":500,"requestId":"1861eloo6fpio"}
就是这样 – 我想摆脱那个错误。 如果需要更多的信息请问:)
我也面临这个问题。 简短的回答:从邮递员请求中删除Content-Type
标题。
长久以来,多部分请求的Content-Type
应该是相当特殊的 – 它应该是这样的:
multipart/form-data; boundary=----WebKitFormBoundaryzeZR8KqAYJyI2jPL
问题是边界很重要,它需要完全匹配用于分隔正在上传的文件的边界。 解决方法很简单:不要指定一个Content-Type
! 当你上传文件的时候,邮差会自动为你添加上面的内容types,除了边界将被Postman或Chrome用来分隔多部分内容填充。
您可以通过使用Chrome开发人员工具(Postman内部)来检查要添加的Content-Type
标头,以及多部分数据的Content-Disposition
标头,这也是一种手动构build的痛苦(在Postman中是不可能的)。
注意 :我的答案是需要multipart/form-data
答案的人的解决scheme。 OP正在寻找一个multipart/mixed
解决scheme。 在这种情况下,我的回答是不够的。 这就是说,似乎很多人只是想要multipart/form-data
解决scheme,所以我会在这里留下我的答案。