Jmeter-正则表达式提取器获取token-小实例

news/2024/11/9 23:21:13

步骤一:在需要获取token的接口上,添加正则表达式提取器

 说明:

    (1) Apply to:应用范围

        Main sample and sub-samples:匹配范围包括当前父取样器并覆盖至子取样器

        Main sample only:匹配范围为当前父取样器

        Sub-samples only:仅匹配子取样器

        JMeter Variable:支持对JMeter变量进行匹配

 

   (2)要检查的响应字段:针对响应数据的不同部分进行匹配

        主体:响应数据的主体部分,排除Header部分;Http协议返回请求的主体部分就是Body

        Body:针对替换了转义码的Body部分

        Body as a Document:返回内容作为一个文档进行匹配

        信息头:只匹配信息头部分的内容

        URL:只匹配URL链接

        响应代码:匹配响应代码,比如HTTP协议返回码200代表成功

        响应信息:匹配响应信息,比如处理成功返回"成功"字样,或者"OK"字样

 

  (3)引用名称:下一个请求要引用的参数名称,如填写title,则可用${title}引用它。

  (4)正则表达式:

    ():括起来的部分就是要提取的。

    .:匹配除换行符以外的任意字符
    +:重复一次或更多次
    ?:重复零次或一次,在找到第一个匹配项后停止
            *:重复零次或更多次

  (5)模板:正则表达式可以设置多个模板进行匹配,在此只可指定运用哪个模板,模板自动编号,$1$指第一个模板,$2$代表第2个模板,依此类推。$0$代表全文匹配

  (6)匹配数字:在匹配时往往会出现多个值匹配的情况,0代表随机取值;不同模板可能会匹配一组值,那么可以用匹配数字来确定取这一组值中哪一个;负数取所有值,通常情况下填0

  (7)缺省值:如果没有匹配到,那可以指定一个默认值

 

 步骤二:使用获取到的token值。添加HTTP Cookie管理器

 

 说明:

  1. 名称:对该 Cookie管理器的自定义概述
  2. 注释:对该 Cookie管理器的详细描述
  3. 每次反复清除Cookies?:选择后,则每次线程组运行时,都会清除 cookie。PS:若是手动添加的cookie,则不会被清除。
  4. Implementation:履行的协议。
  5. Cookie Policy:Cookie的管理策略。有如下几种可选项:
  • compatibility:推荐选择此种策略。这种兼容性设计要求是适应尽可能多的不同的服务器,尽管不是完全按照标准来实现的。如果你遇到了解析 Cookies 的问题,你就可能要用到这一个规范。有太多的web站点是用CGI脚本去实现的,而导致只有将所有的 Cookies 都放入 Request header 才可以正常的工作。这种情况下最好设置 http.protocol.single-cookie-header 参数为 true。
  • rfc2109:是HttpClient使用的默认Cookies协议。
  • rfc2965:定义了版本2并且尝试去弥补在版本1中 Cookie 的 RFC2109 标准的缺点。规定 RFC2965 最终取代 RFC2109 发送 RFC2965 标准 Cookies 的服务端,将会使用 Set-Cookie2 header 添加到 Set-Cookie Header 信心中,RFC2965 Cookies 是区分端口的。
  • ignorecookies:此规格忽略所有 Cookie。被用来防止 HttpClient 接受和发送的 Cookie。
  • netscape:是最原始的 Cookies 规范,同时也是 RFC2109 的基础。尽管如此,还是在很多重要的方面与 RFC2109 不同,可能需要特定服务器才可以兼容。
  • default:默认。

      6.存储在Cookie管理器中的Cookie

      名称:参数的名称,如本例中名称是  _security_token

      值:参数的值,如本例中值是从步骤一的正则表达式中的${token}

      域:使用到该cookie的域名,如本例中则是多图模板这个接口的域名

 

运行结果:

 

实践过程中遇到的问题:

1、

 

2、token的值拿到了,但是线程执行失败,把请求方法由Get改成Post就成功了

3、token的值拿到了,请求方法也是正确的,线程执行失败,把代理去掉就成功了

转载于:https://www.cnblogs.com/chengchengla1990/p/9675876.html


http://www.niftyadmin.cn/n/4822157.html

相关文章

CCNA-路由器之静态路由

一、路由器的作用: 1、用于不同网络间的互联 2、为它所承载的数据做路径的选择(选路) 当数据包进入路由器后,路由器将基于数据包中的目标ip地址,查看本地的路由表;查询后若存在记录将无条件按照记录转发…

Codeforces Round #509 (Div. 2) E. Tree Reconstruction(构造)

题目链接:http://codeforces.com/contest/1041/problem/E 题意:给出n - 1对pair,构造一颗树,使得断开其中一条边,树两边的最大值为 a 和 b 。 题解:显示最大值出现的次数为n - 1,且i点出现的次数…

CCNA-ARP(地址解析协议) RARP(反向地址转换协议) 无故(免费)ARP

一、ARP(地址解析协议) 1、基本概念 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。 主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主…

CCNA-静态路由之扩展配置

一、环回接口 路由器上用来测试TCP/IP协议栈能否正常封装与解封装数据 1、PC 默认存在,127.0.0.1 //本地环回地址,用来测试本机TCP/IP协议栈能否正常工作 2、路由器 路由器也存在环回接口,为了测试路由器的TCP/IP协议栈能否正常工作&…

求两个数之间的质数 -----------基于for循环 算法思想

前端代码&#xff1a; <% Page Language"C#" AutoEventWireup"true" CodeFile"Default.aspx.cs" Inherits"_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org…

CCNA-静态路由实验

实验要求&#xff1a; 1、根据实验要求&#xff0c;我们首先在Cisco packet tracer模拟器中搭建此网络拓扑图 2、然后我们就要开始做很重要的一步&#xff0c;就是地址规划。 R1-R4各需要4个环回&#xff0c;然后路由器的每一个接口需要一个网段&#xff0c;则一共需要14个网段…

SD-WAN来了,分支路由器就不要了?

路由软件和软件定义的WAN技术有可能取代分支机构中的传统路由器设备。现在很多组织正在向集成的SD-WAN替代方案迁移&#xff0c;为远程WAN站点提供带宽优先级和集中管理功能。 传统的分支路由器是围绕定制的专用集成电路和专用网络处理器设计的&#xff0c;以提供最佳的WAN性能…

tomcat解压版exe文件启动闪退问题

tomcat7.0之后好像不需要配置环境变量了&#xff0c;解压或安装后直接开启服务&#xff0c;在浏览器输入&#xff1a;localhost:8080就好了 解压后双击tomcat9w、tomcat9两个exe文件&#xff0c;出现闪退&#xff0c;但是双击startup.bat文件则会正常启动 在tomcat的bin文件夹有…