JMeter-关联获取token的值
Posted 说笑谈古松
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JMeter-关联获取token的值相关的知识,希望对你有一定的参考价值。
1、什么是token?
Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌。
2、Token的作用
身份验证;
避免表单重复提交
3、Token和session的区别?
App以及分布式的系统用Token比较多;
session在web服务端用得比较多。
4、Token的特点
无状态、可扩展:在客户端存储的Token是无状态的,并且能够被扩展。基于这种无状态和不存储Session信息,负载均衡器能够将用户信息从一个服务器传到其他服务器上。
安全性: 请求中发送token而不再是发送cookie能够防止CSRF(跨站请求伪造)。即使在客户端使用cookie存储token,cookie也仅仅是一个存储机制而不是用于认证。
有效性:Token具有有效性,Token过期了要重新登录。
5、Token在接口测试中的应用
Token主要来用标识用户是否处于登录状态,有些接口需要登录后才有权限访问的。
在实例讲解之前,先熟悉一下Token的请求过程:
案例演示:
做这个题之前请先回忆token的请求过程,这个是正在使用的项目,要温柔一点对待接口,请别去频繁访问。
现有一个登录接口A,登录成功后返回一个token值。有一个获取门店信息的接口B,
但是接口B必须要保持登录才能访问。
A接口文档:
- 访问地址:http://ums.astraea.com.au/ums/auth/login
- 请求类型:POST
- 请求头部: application/json
- 请求参数:{“username”:“xx”,“password”:“e10adc3949ba59abbe56e057f20f883e”}
B接口获取门店信息的接口文档:
- 访问地址:http://api.pos.gvt861.com/api/Shop/GetShopList
- 请求类型:POST
- 请求头部: application/json
- 请求头token参数:Authorization:XXX
- 请求参数:{“name”:"",“PageIndex”:1,“pageSize”:15}
先建好线程组:
这里引入一个概念,鉴权: 鉴权(authentication)是指验证用户是否拥有访问系统的权利。
我们常用的鉴权有四种:
1、HTTP Basic Authentication
2、session-cookie
3、Token 验证
4、OAuth(开放授权)
怎么确认系统是通过Token还是cookie保持登录?
1、直接问开发
2、自己抓包看一下,请求信息中没有cookie相关的信息,而且在登录的响应看看有没有token的值生成
处理Token的思路:
—>登录的接口的生成token - 用正则表达式或者JSON提取器把token取出来存放在变量中-
—>系统中的其他接口发送请求的时候在信息头把token带上。
1.首先用正则表达式提取token:
2、关联
以上是关于JMeter-关联获取token的值的主要内容,如果未能解决你的问题,请参考以下文章