jmeter-md5加密

JMeter使用"BeanShell取样器"来实现参数的md5加密:

java代码如下:

java 复制代码
import org.apache.commons.codec.digest.DigestUtils;
import java.util.Date;
// 1. accessKeyId
String accessKeyId = vars.get("accessKeyId");
// 2. 卡号
String cardNo = vars.get("cardNo");
// 3. 十六位随机数
//String nonceStr = vars.get("nonceStr");
String nonceStr = "";
String chars = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz";
int maxLen = chars.length();
for (int i = 0; i < 16; i++) {
	double floor = Math.floor(Math.random() * maxLen);
	int intValue = (new Double(floor)).intValue();
	nonceStr += String.valueOf(chars.charAt(intValue));
}
vars.put("nonceStr", nonceStr);
log.info("---nonceStr---" + nonceStr);

// 4. 时间戳
String timestamp = new String();
Date date = new Date();
timestamp = String.valueOf(date.getTime());
vars.put("timestamp", timestamp);

// 5. 密钥
String key = "e992fdbec7cd1eb2b1c6c8e07d4eea60";

// 6. 拼接待签名的参数值
String params = "accessKeyId=" + accessKeyId + "&cardNo=" + cardNo + "&nonceStr=" + nonceStr + "&timestamp=" + timestamp + "&key=" + key;
log.info("拼接后的参数:{}", params);

String sign = "";
// 7. md5签名整个参数
sign = DigestUtils.md5Hex(params).toUpperCase();
vars.put("sign", sign);
log.info("-- md5签名--" + sign);
相关推荐
知识汲取者14 分钟前
巨量引擎营销 API 完整文档
开发语言·数据库·python
摇滚侠24 分钟前
针对主键索引的 for update 操作有什么用
java
Larry_Yanan31 分钟前
QML面试常见问题(一)QML中组件呈现方式的方法有哪些
开发语言·c++·qt·ui·面试
Aurorar0rua32 分钟前
CS50 x 2024 Notes C -12
c语言·开发语言·学习方法
RainCity43 分钟前
Java Swing 自定义组件库分享(六)
java·笔记·后端
techdashen1 小时前
深入 Rust enum 的内存世界
开发语言·后端·rust
xuanjiong1 小时前
DDD架构Repository仓储数据流转全链路详解:Domain与其他层的数据流转
java·系统架构
yuhuofei20211 小时前
【Python入门】Python与PyCharm的安装
开发语言·python·pycharm
吴声子夜歌1 小时前
Java——类加载机制
java·开发语言·python
Xiacqi11 小时前
Java 中 String、StringBuffer、StringBuilder 的区别
java