postman是谷歌浏览器的一个插件,干什么用的呢?跟题目一样,就是用来调试网络接口的。在我们程序猿做程序的时候,如果做网络应用的开发,比如一些B/S、C/S,我们总会给别人一些网络接口,也会使用别人给我们的网络接口,还有我们自己给自己的网络接口,比如说我们使用SpringMVC开发web项目,SpringMVC的controller就是我们给我们自己的网络接口,还有webserver技术,对外提供的接口。
比如说,我们是一名APP工程师,想测测服务器端工程师给我们的接口对不对,那么我们就可以使用postman这个浏览器插件。
接口请求流程
postman使用
从流程图中我们可以看出,一个接口请求需要设置:请求URL,请求方法,请求头,请求参数。同样的,在postman中,我们也只需要设置这四项即可完成一次请求。
GET请求示例
说明:特别标注出了响应HTTP状态码与响应正文,还有请求的耗时。需特别注意的是注意区别HTTP状态码与响应正文中的状态码,只有HTTP状态码是200时,才代表这个接口请求是正确的,这个是HTTP协议定义的,而响应正文的状态码,是程序员自已定义的,可以是200,也可以定义为其它值,是为了让接口使用者去区分正常数据与异常数据,比如
POST表单提交,先看下图POST表单提交示例
上图示例中设置了请求方法,请求URL,请求参数,但没有设置请求头。有一个要明确的点是,请求头中的Content-Type与请求参数的格式之间是有关联关系的:
当选择x-www-form-urlencoded的参数方式后,postman自动的帮我们设置了Content-Type,所以不需要我们人工干预,这就是使用一款流行工具的好处,把一些基础点都帮我们处理了。
JSON串提交,如下图示例:
上图中,当我们选择了JSON(application/json)时,postman同样帮我们自动设置了Content-Type,可以自行的去查看一个Headers.
POST请求示例
HTTP的POST请求的参数,都是放在请求正文中的,只是根据Content-Type来判断请求正文的格式,那么我们同样可以在表单提交时,选择raw,然后自行设置Content-Type为application/x-www-form-urlencoded。
postman断言
一个完整的接口测试,包括:请求->获取响应正文->断言,我们已经知道了请求与获取响应正文,接下来将会告诉大家如何用postman进行断言。
这个”Tests”就是我们需要处理断言的地方,postman很人性化的帮我们把断言所用的函数全给准备好了:
虽然都是英文,但看懂应该并不懂。OK,英文看着烦,不想看,是吧,那好,我们来设置一个断言场景,根据这个断言场景,来教大家如何来用postman的断言,场景如下: