postman上面请求之session疑惑

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postman上面请求之session疑惑相关的知识,希望对你有一定的参考价值。

参考技术A 最近在使用postman的过程中发现,postman居然像浏览器一样有session机制。浏览器在关闭重启后session会重新创建,那postman在重启后会不会重新创建呢! 于是奋力的重启了几十遍postman! 诡异的事情发生了,之前的请求的session还是继续存在着(通过sessionId判断还是之前的session)。

带着上面的疑惑,我进行了一番思索: 服务器要辨别出postman之后请求的session是不是同一个,那还得和浏览器请求一样携带一个jsessionId进行区分。那postman的seesionId是存在什么地方的呢!浏览器是通过cookie的方式存储,那postman呢。仔细看了下postman的界面,果然发现postman请求界面上面有一个Cookies字样按钮,点击查看如下图:

突然间恍然大悟,postman这货,原来是把请求同一个ip地址或者域名 生成的JessionId 和域名或者ip一 一对应进行了存储,也就是说只要服务端不重启,postman不管重启多少次,只要请求上次相同的ip地址或者域名下面的接口session都是同一个。

Postman接口测试之:Postman实现接口请求(1)

参考技术A 课程实例使用的url地址汇总:

开源接口部分:  https://api.apiopen.top/api.html

1、获取时间get接口 http://poetry.apiopen.top/getTime

2、网易新闻post接口 https://api.apiopen.top/getWangYiNews

3、百度ip接口 https://sp1.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query=12.12.12.12&co=&resource_id=5809&t=1636461955537&ie=utf8&oe=gbk&cb=op_aladdin_callback&format=json&tn=baidu&cb=jQuery110206769724197850711_1636461449011&_=1636461449013

电商项目部分: 电商网站: http://www.testingedu.com.cn:8000/

4、电商登录接口:http://www.testingedu.com.cn:8000/index.php?m=Home&c=User&a=do_login&t=0.9806405470978172

5、文件上传接口 :http://www.testingedu.com.cn:8000/index.php/home/Uploadify/imageUp/savepath/head_pic/pictitle/banner/dir/images.html

自动化平台项目:平台网站: http://39.108.55.18/mypro/#/login

6、平台登录接口:http://39.108.55.18/mypro/api/user/login

Token接口项目:Token项目网站: http://www.testingedu.com.cn:8081/inter/

7、Token项目 SOAP接口:http://www.testingedu.com.cn:8081/inter/SOAP?wsdl

1、 Postman 安装之后, 可以进行一下更新。

使用的时候最好可以注册一个账号。

先创建一个workspace,用于管理接下来使用过程中产生的内容。

2、接口测试的基本流程: 本质就是抄。

1、了解接口信息 : 由开发提供接口文档, 或者通过抓包来获取接口报文信息。

2、 设计测试用例

3、 执行测试用例: 用postman等工具执行。 请求发包。

4、验证返回结果。

3、 HTTP协议接口报文: 理解成寄快递。

接口报文分为请求和返回,格式其实是相同的。

请求

请求四要素: http方法 、url地址、请求头 、请求体。

请求行: http方法(邮寄方式) url(地址) http协议版本

请求头: 键值对格式 ,键:值 用换行分割的方式。 (快递单)

除了特殊指定的要填的请求头以外,注意 post请求 需要关注content-Type请求头,表示的是请求体的编辑格式。(快递的运输方式 常温/冷冻)

常见的content-Type类型:

application/x-www-form-urlencoded: url编码格式: 键=值&键=值

application/json: json格式字符串: "键":值,"键":值

postman选 raw格式之后,下拉栏选择json

注意:复制json格式的请求体的时候,如果从浏览器开发者工具中复制,记得确认键必须带双引号。最好view source 之后再复制。

multipart/form-data: 用于进行文本和文件的混合传递。 完成文件上传。

选择posmtna中的 form-data进行参数填写。

注意: Name空格中,可以选择下拉 file或者text。

文件用file上传,文本用text上传。

text/xml: 用xml格式来进行传递。 <键>值</键>

选择 body中的 raw格式 ,下拉栏用xml进行填写:

注意:content-type postman会默认使用 application/xml,需要自己确认,到底是text/xml还是application/xml,如果不对,进行修改,最后是直接去掉原有的,加一个新的content-type头。

请求体 : 请求头之后空一行 ,之后的就是请求体。 (寄的东西)

返回

返回行:http协议版本 HTTP状态码(物流状态) 状态码描述

返回头: 键值对格式 ,键:值 用换行分割的方式。 (快递单)

返回体 :返回头之后空一行,就是返回体 (对方寄回的东西)

返回:重点验证返回体。

4、http协议抓包:

使用浏览器开发者工具抓包:

在网页上右键检查,或者按下F12,打开开发者工具,切换到network 界面。

注意:记得勾选 preserve log。

请求体中:request payload (json格式、xml格式和普通文本) 和form data (文件和x-www-form-urlencoded格式)

使用 fiddler /charles 等http抓包工具抓包:

在fiddler菜单右侧,用inspector 选项进行查看,选raw(原始)格式能够直观看到报文格式。

http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

http协议是基于url地址的资源请求协议

5、用postman发送报文请求:

1、http 方法 和 url 进行填写。 注意 url中最后带上的空格也会有影响,所以千万注意。

2、请求头一般先不做过多关注,先用默认的,除非有明确的说明需要设置某个请求头。

3、请求体在postman 请求栏的body中进行设置。选择相应的content-type格式进行编辑,可以自动设置,不用自己设置 请求头中的 content-type。

6、unicode编码: \u 4位16进制数,用于表示某个特殊的字符。

例如:\u7f8e\u56fd\u963f\u62c9\u65af\u52a0

7、get和post的核心区别:

get方法,通常不带请求体。

而post方法可以携带请求体。

END

以上是关于postman上面请求之session疑惑的主要内容,如果未能解决你的问题,请参考以下文章

使用postman做接口测试----柠檬不萌!

Postman接口测试之POSTGET请求方法

为啥 Postman 在我的 React 应用程序中接收到 express 会话 cookie 而不是我的 post 请求

Postman接口测试之POSTGET请求方法

Postman Postman测试接口之POST提交本地文件数据

使用postman发送post数据时遇到的问题