jmeter接口测试,处理cookie和token的方法

关键词:cookie   session   token

一、解释

cookie是一个文件,存放在本地,chrome浏览器F12后的Application下可查看cookies。由服务器生成,故Response Headers中会存在Set-Cookie字段。

session是为了保持服务器与客户端的会话状态,在用户登录后,服务器端生成一个sessionID传给客户端;之后的每次会话,客户端只需要传这个sessionID即可不用重新登录,保持在线状态。故服务器端需要保存所有在线的sessionID,从而影响服务器性能!sessionID是存在cookie中的。

token是为了解决服务器压力,用户登录成功后,服务器端生产token(钥匙和锁)通过cookie或请求头的方式传给客户端,再次请求时带上token即可,无状态(服务端通过算法验证钥匙和锁是否正确)。

总之,就是两种鉴权方式,通过sessionID或者token,服务器来判断是否是某用户登录后的其他请求。

其他:

1、服务器端会配置session的时限,在有效时限内客户端没有清除cookie的情况下,session ID是不变的。

2、一个用户在一次会话(打开浏览器,访问服务器,直到浏览器关闭,称为一次会话,严格的说,一次会话应该是依赖session的生成机制)上就是一个session_id。

3、每次登录时,总会产生一个token或者sessionID,生成这个的目的是为了每次操作其他接口的时候,会判断当前用户是否登录。

二、运用

1)cookie的处理

准备:两个接口:一个登录、一个充值

  登录接口

  充值接口:会失败

第一种方法,直接添加HTTPCookie管理器,移动到线程组最上面

 1、添加:HTTPCookie管理器,放到最上面。

2、再次运行:就会充值成功。

第二种方法:有的时候Cookie会变,我们就需要,先使用正则表达式提取器获取到cookie(JSESSIONID),再在需要Cookie的接口下添加HTTPCookie管理器(填写名称、值、域、路径)即可。

登录时会有set_Cookie存在

1、添加后置处理器>>>正则表达式提取器

设置:

2、添加:调试取样器

运行结果:已经拿到cookie

3、添加:右击线程组>>添加>>配置元件>>HTTPCookie管理器

设置:

4、添加:JSESSIONID:${正则表达式提取器提取到的变量名}

域:

路径:

5、查看运行结果:

2)token的处理

查询用户信息需要先登录,在查询用户信息的时候需要携带token。

 1、在登录接口下面使用正则表达式提取器获取token

  登录接口响应数据中返回token。

  配置提取器:

 2、添加:调试取样器,运行后查看是否可以获取到

  3、添加HTTP信息头管理器


运用相关资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cooki...
    时芥蓝阅读 6,936评论 1 17
  • 前言 废话不多说,就是姐姐我在最近的两个前后端分离的项目做接口测试,遇到了登录验证的问题,就是所谓的XSR...
    伊人风采_690d阅读 55,246评论 4 34
  • 注:本文转载自前端大全 背景 在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称...
    楠小忎阅读 3,895评论 0 0
  • 适配只看三个参数 1.渲染像素--屏幕截图的图片尺寸,单位px2.逻辑像素--程序员开发所用尺寸,单位pt3.倍率...
    iOS安年阅读 27,087评论 14 54
  • final修饰的类可以被实现,不能被继承,即不能有子类
    屎倒淋头还嚼便阅读 876评论 0 0