gpt4 book ai didi

google-chrome - 使用 Postman Chrome 扩展发送多部分/混合内容

转载 作者:行者123 更新时间:2023-12-03 06:13:07 25 4
gpt4 key购买 nike

我正在努力使用 Postman Chrome 扩展程序创建 POST 多部分/混合请求

这是我的 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

响应中有趣的部分

Content-Length: 41557

Expect: 100-continue

Content-Type: multipart/mixed; boundary=----------------------------8aaca457e117

  • additional stuff not fine transfer.c:1037: 0 0
  • HTTP 1.1 or later with persistent connection, pipelining supported

当我使用 Postman 时 enter image description here

我得到这样的回应

{"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"}

就是这样 - 我希望摆脱这个错误。如果需要更多信息,请询问:)

最佳答案

我也遇到这个问题了。简短回答:从 Postman 请求中删除 Content-Type header 。

长话短说,多部分请求的 Content-Type 应该相当特殊——它应该看起来像这样:

multipart/form-data; boundary=----WebKitFormBoundaryzeZR8KqAYJyI2jPL

问题是边界很重要,它需要完全匹配用于分隔上传文件的边界。解决方案很简单:不要指定 Content-Type!当您上传文件时,Postman 会自动为您附加上述内容类型,但边界将填充为 Postman 或 Chrome 用于分隔多部分内容的任何内容。

您可以通过使用 Chrome 开发者工具(在 Postman 中)检查添加的 Content-Type header 以及以下内容的 Content-Disposition header 来验证此行为多部分数据,手动构建也很痛苦(并且在 Postman 中不可能)。

注意:我的答案是为那些需要 multipart/form-data 答案的人提供的解决方案。 OP 正在寻找多部分/混合 解决方案。在这种情况下我的回答是不够的。话虽如此,似乎很多人只想要 multipart/form-data 解决方案,所以我将在这里留下我的答案。

关于google-chrome - 使用 Postman Chrome 扩展发送多部分/混合内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19178813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com