http - 是否有 HTTP 验证器来显示我的供应商的 API 是否创建了格式错误的 POST?

标签 http multipartform-data

如果这不是适合此问题的论坛,我深表歉意,但我无法弄清楚这个问题在所有站点中的位置。我的供应商有一个 API,用于将文件上传到服务器,创建一个内容类型为:multipart/form-data 的 POST。我的 node.js express 无法解析请求,当使用其他工具生成上传请求时,我在 Fiddler 中看到的主要区别是边界之间有一段完全没有内容。例如:

POST /upload HTTP/1.1
Content-Type: multipart/form-data; boundary=887c07d2-ff01-4eaa-b374-a807f9673742
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.7.0_15
Host: 192.168.1.109:3000
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Content-Length: 2539

--887c07d2-ff01-4eaa-b374-a807f9673742
--887c07d2-ff01-4eaa-b374-a807f9673742
Content-Disposition: form-data; name="Filename"

picture_178.jpg
--887c07d2-ff01-4eaa-b374-a807f9673742
Content-Disposition: form-data; name="folder"

whatever
--887c07d2-ff01-4eaa-b374-a807f9673742
Content-Disposition: form-data; name="Filedata"; filename="picture_178.jpg"
Content-Type: image/jpeg

......JFIF.....H.H.....C.........................................
(etcetera)

我查看了相关的 RFC,我认为这是无效的,但是是否有一些工具可以帮助我就此达成一致并向我的供应商进行演示?我知道 HTML 验证器和其他验证器,但我找不到任何东西来验证行协议(protocol)结果。

谢谢。

最佳答案

我不知道有任何在线验证工具,但是 multipart spec要求边界之间的部分是符合 RFC 822 的消息。由于所述 RFC 要求消息至少有一些空格,空字符串是不够的。因此,我认为该示例不是有效的多部分消息。

关于http - 是否有 HTTP 验证器来显示我的供应商的 API 是否创建了格式错误的 POST?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15042728/

相关文章:

jquery - Ajax——防止 100 继续行为

ajax - 请求的资源上不存在 'Access-Control-Allow-Origin' header

java - 无法显示来自 JSONData 的 Json 数组值

go - 如何在 Go 中为使用 'multipart' 提交的表单设置内容类型

Java 多部分帖子

http - If-Modified-Since 是强验证还是弱验证?

rest - Quarkus JAX-RS 服务多部分表单上传 - "Cannot consume content type"

scala - Spray Client Post Multipart

javascript - 如何在 Grails 中接收 Angular $http post 多部分表单数据

http - 使用 NGINX 进行浏览器特征检测