[接口测试]POST请求提交数据的三种方式及Postman实现

Posted 测试baby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[接口测试]POST请求提交数据的三种方式及Postman实现相关的知识,希望对你有一定的参考价值。

在这里插入图片描述

1. 什么是POST请求?

POST请求是HTPP协议中一种常用的请求方法,它的使用场景是向客户端向服务器提交数据,比如登录、注册、添加等场景。另一种常用的请求方法是GET,它的使用场景是向服务器获取数据。

  1. POST请求提交数据的常见编码格式

当前,POST请求提交数据的编码方式有三种:

● application/x-www-form-urlencoded

● multipart/form-data

● application/json

1、application/x-www-form-urlencoded

这应该是最常见的POST提交数据的方式了。浏览器的原生form表单,如果不设置 enctype属性,那么最终就会默认以application/x-www-form-urlencoded方式提交数据。这种情况下请求头的Content-Type被设置成application/x-www-form-urlencoded,提交的数据按照 key1=value1&key2=value2的方式进行编码,key和value都进行了URL转码。大部分服务端语言都对这种方式有很好的支持。很多时候,我们用Ajax提交数据时,也是使用这种方式。

示例:

在这里插入图片描述

什么是URL编码?

是一种浏览器用来打包表单输入的格式。浏览器从表单中获取所有的name和其中的值 ,将它们以name/value参数编码(移去那些不能传送的字符,将数据排行等等)作为URL的一部分或者分离地发给服务器。

2、 multipart/form-data

这也是一个常见的POST数据提交的方式,表示在发送前不对数据进行编码,这种方式一般出现在通过form表单上传文件的场景中,在html的form标签中通过设置属性enctype=multipart/form-data来表示通过这种方式提交数据。上面提到的这两种POST数据的方式,都是浏览器原生支持的。各大服务端语言对它也有着良好的支持。

在这里插入图片描述

3、application/json

application/json 这个Content-Type作为响应头大家肯定不陌生。实际上,现在越来越多的人把它作为请求头,用来告诉服务端消息主体是序列化后的JSON字符串。由于JSON规范的流行,除了低版本IE之外的各大浏览器都原生支持JSON.stringify,服务端语言也都有处理JSON的函数,使用JSON不会遇上什么麻烦。

在这里插入图片描述

  1. 通过Postman实现三种请求

1、application/x-www-form-urlencoded的实现

选择请求方法为POST,填入URL,在Body下选择x-www-form-urlencoded,然后再填入参数和数据,如下:

在这里插入图片描述

2、multipart/form-data的实现

选择请求方法为POST,填入URL,在Body下选择form-data,然后填入参数和数据,如下:

在这里插入图片描述

3、application/json的实现

选择请求方法为POST,填入URL,在Body下选择Raw->JSON,然后填入JSON格式的数据,如下:

在这里插入图片描述

以上就是通过Postman实现三种不同方式提交数据的Post请求的具体方法。

给大家推荐下我自己建的软件测试交流学习群: 902061117 ,群里都是搞软件测试的,如果你正在学习测试 ,小编欢迎你加入,大家都是测试党,群内不定期分享干货(都是软件测试相关的),包括我自己整理的一份2021最新的进阶自动化资料。

在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你

关注我的微信公众号【伤心的辣条】免费获取~

送上一句话:

世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

在这里插入图片描述

好文推荐:

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

测试岗反复跳槽,跳着跳着就跳没了…

软件测试人员该学习 Python 的七个理由

App公共测试用例梳理

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

35岁之后软件测试工程师靠什么养家?我能继续做测试!

以上是关于[接口测试]POST请求提交数据的三种方式及Postman实现的主要内容,如果未能解决你的问题,请参考以下文章

axios POST提交数据的三种请求方式写法

POST 请求的三种常见数据提交格式

Springboot中调用外部接口的三种方式

Node.JS的表单提交及OnceIO中接受GET/POST数据的三种方法

RestTemplate提交表单数据的三种方法

有关post的三种提交格式