当使用postman工具建立一个http请求时,你会看到“Body”页签中包括了多种格式的填写方式。
在具体解释每一种请求体之前,需要明确的是:当发送http请求时,服务器可能会需要Content-Type Header。Content-Type Header是为了使服务器正确的解析请求体而存在的。对于form-data和x-www-form-urlencoded这两种请求体类型而言,不需要用户设置Content-Type Header,postman会自动设置一个正确的值。对于raw这种请求体类型,需要用户根据对应的body类型(例如:text、json等)自行设置Content-Type Header。对于binary这种请求体类型,postman规定不允许设置Content-Type Header。
1、form-data请求体
![41a90ce32d39ee55c288bc4a9fefab14.gif](https://i-blog.csdnimg.cn/blog_migrate/e714d18cbabb2177c609980116156d4f.gif)
它模拟用户从web网页上填写表单,并提交的过程。只需要输入正确的key和value的键值对即可。每个key对应的“值”可以是字符串或者是file(就像是你从web网页中,要求你上传一个身份证附件一样)。
2、x-www-form-urlencoded请求体
![7d7b8624c956a76d0d63a9776be316e1.png](https://i-blog.csdnimg.cn/blog_migrate/cbcc9f7920977830e0c499aa78b1e24f.jpeg)
它相当于用户从web浏览器的地址栏中,所访问的域名后面输入的参数一样。输入正确的key和value的键值对后,由postman工具完成编码。需要注意的是:这种方式不支持value值是“file”类型的。
3、raw请求体
![7f8fa32a104b0a4e71a3ba99dfb25493.png](https://i-blog.csdnimg.cn/blog_migrate/1d8484c121ae42fc1030a96f0f47ad1a.jpeg)
原生的请求体内容可以是text、json、js、hml、xml等各种格式的数据。但是,必须对应正确的Content-Type Header。
4、binary请求体
![f5741009866aaa35a22ddf52960c5b1c.png](https://i-blog.csdnimg.cn/blog_migrate/92776d10e2c922d407246b2daa34557b.jpeg)
二进制数据请求体允许用户提交例如:图片、音频文件、视频文件等格式数据。当然也可以是文本文件。