首页 > 其他分享 >jmeter提取请求报文中的字段并记录到本地文件

jmeter提取请求报文中的字段并记录到本地文件

时间:2024-06-22 22:58:34浏览次数:20  
标签:username jmeter 提取 log java 报文 request import password

jmeter-beanshell-procesor
前面提到的提取前提条件:在响应报文中提取,
现在条件为:在请求报文里
假设我的请求报文是{
"username": "admin",
"password": "123456"
}代码如下

import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

// 获取输入请求数据
String request = prev.getSamplerData();

// 使用 log.error 打印请求字符串,用于检查
log.error("Request: " + request);

// 定义新的正则表达式模式来提取 username 和 password
Pattern patternUsername = Pattern.compile("\"username\":\\s*\"([^\"]+)\"");
Pattern patternPassword = Pattern.compile("\"password\":\\s*\"([^\"]+)\"");

Matcher matcherUsername = patternUsername.matcher(request);
Matcher matcherPassword = patternPassword.matcher(request);

String username = "";
String password = "";

// 提取 username
if (matcherUsername.find()) {
    username = matcherUsername.group(1);
} else {
    log.error("Failed to extract username from the request.");
}

// 提取 password
if (matcherPassword.find()) {
    password = matcherPassword.group(1);
} else {
    log.error("Failed to extract password from the request.");
}

// 创建或确保 D 盘的 log 文件夹存在
File logFolder = new File("D:\\log");
if (!logFolder.exists()) {
    logFolder.mkdirs();
}

// 写入文件
try {
    BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\log\\log.txt", true));
    writer.write(username + "," + password + "\n");
    writer.close();
} catch (IOException e) {
    log.error("Error occurred while writing to the file: " + e.getMessage());
}

标签:username,jmeter,提取,log,java,报文,request,import,password
From: https://www.cnblogs.com/yimouz-219/p/18262845

相关文章

  • jmeter中beanshell-regex用法-prev.getTime()
    jmeter-beanshellPostprocessor,实现需求:判断响应时间大于10ms的响应,并记录想要的响应字段,比如流水号,注册的用户名密码等代码如下:importjava.util.regex.Matcher;importjava.util.regex.Pattern;//这里引入判断响应时间的代码,如判断响应时间超过10ms,则记录流水号longresp......
  • 视频字幕提取器软件能提取文字吗?是否支持多种视频格式?
    看网课是现代人们在闲暇之余学习的方式。只是,当你在观看一门复杂的课程时,是否曾因为跟不上讲解速度而感到不适?在回顾一堂英语课时,是否曾因为听不清某个单词而错过了关键点?视频字幕提取功能的出现,正是为了解决这些困扰。它能识别视频中的语音,并将其转换为文字,让你可以随时回......
  • 北斗短报文终端在应急消防通信场景中的应用
    在应对自然灾害和紧急情况时,北斗三号短报文终端以其全球覆盖、实时通信和精准定位的能力,成为应急消防通信的得力助手。它不仅能够在地面通信中断的极端条件下保障信息传递的畅通,还能提供精准的位置信息,为救援行动提供有力支持。北斗三号短报文终端在应急消防通信场景中的应用......
  • Graphicator:一款功能强大的GraphQL枚举与提取工具
    关于GraphicatorGraphicator上一款功能强大的GraphQL枚举与提取工具,该工具可以对目标GraphQL节点返回的内部文档进行迭代,然后以内部形式重新构建数据模式,以便重新创建支持的查询。创建此类查询时,将使用它们向GraphQL节点发送请求,并将返回的响应保存到文件中。工具不会保存错......
  • TCP报文详解
    简介其实协议的形式就是结构化的数据,TCP协议也是,它的报头格式如下TCP报头,实际上是一个结构化的数据,也就是一个结构体。例如:structtcp_hdr{unsignedintstc_port:16;unsignedintdesc_port:16;unsignedintseq;unsignedintack_seq;....}......
  • Jmeter中http请求参数为文件类型的使用
    Jmeter中http请求参数为文件类型背景本人在使用jmeter中,一开始一直不知道怎么设置请求中参数是文件类型;因为之前使用的是postman,但postman中如果参数是文件类型,可以直接选择参数类型,切换到file就可以;可能是因为之前一直使用的postman,所以一换到jmeter就不会用。使用创建......
  • 基于语音信号MFCC特征提取和GRNN神经网络的人员身份检测算法matlab仿真
    1.算法运行效果图预览    2.算法运行软件版本MATLAB2022a 3.部分核心程序P=[Dat1_wav1;Dat1_wav2;Dat2_wav1;Dat2_wav2;Dat3_wav1;Dat3_wav2;Dat4_wav1;Dat4_wav2];T=[ones(800,1);2*ones(800,1);3*ones(800,1);4*ones(800,1)];%GRNN训练net=newgrnn(......
  • Pointnet++改进即插即用系列:全网首发FastKAN|即插即用,提升特征提取模块性能
    简介:1.该教程提供大量的首发改进的方式,降低上手难度,多种结构改进,助力寻找创新点!2.本篇文章对Pointnet++特征提取模块进行改进,加入FastKAN,提升性能。3.专栏持续更新,紧随最新的研究内容。目录1.理论介绍2.修改步骤2.1步骤一     2.2步骤二     2.3步......
  • 数据治理在数据提取中的角色:确保数据质量和安全
    在数字化浪潮中,数据已成为企业运营和决策的核心驱动力。然而,随着数据量的快速增长和来源的多样化,如何确保所提取数据的质量和安全性成为企业面临的重大挑战。数据治理,作为一种系统的管理方法,在数据提取过程中扮演着至关重要的角色,旨在保障数据质量和安全,从而为企业提供准确、......
  • 数据提取与治理:构建企业数据战略的基石
    数据提取与治理:构建企业数据战略的基石在当今这个数字化时代,数据已成为企业竞争的核心资产。一个强大的数据战略不仅能够为企业带来深刻的市场洞察,还能驱动业务决策,提升运营效率。而数据提取与治理,正是构建这一战略不可或缺的基石。数据提取:解锁企业数据潜力的关键数据提取,......