HTTP请求中 request payload 和 form Data 区别?
Form Data和Payload是浏览器传输给接口的两种格式,这两种方式浏览器是通过Content-Type来进行区分的(了解Content-Type),
一般情况下:
1.如果是:application/x-www-form-urlencoded 的话,则为formdata方式;
2.如果是:application/json 或 multipart/form-data 或 application/x-protobuf 的话,则为 request payload的方式。
当然也不是绝对的,也见过application/json 对应 formdata 的,但比较少。
举例
一、使用formdata方式:
比如如下使用ajax方式的提交post请求的代码(默认使用application/x-www-form-urlencoded编码):
二、使用request payload方式:
multipart/form-data
application/json
application/x-protobuf
注意:
1.Protobuf,是一个二进制格式,本来就不是字符串,因此当然 Chrome 也无法正确显示。
2.和 HTTPS 没什么关系。
来自:
当 application/x-protobuf 为乱码的时候,则需要采用抓包的方式获取相关信息了。
详见:
|