代码块截图:

代码块如下:
注意:1.JMeter中的后台输出使用:log.info();
2.自己写的脚本提前需要将自己编写的java脚本类文件打成jar包,然后在放在步骤3的路径下面
3.把脚本需要的jar包放在自己安装JMeter的路径, \jmeter\lib\ext 下面,然后本地重新启动jmeter即生效
import org.apache.jmeter.protocol.http.control.HeaderManager;
import org.apache.jmeter.protocol.http.control.Header;
import org.apache.jmeter.protocol.http.sampler;
import java.util.*;
//sampler 里面有个getHeaderManager 可以获得请求头
HeaderManager headers = sampler.getHeaderManager();
// 打印全部的头部内容
log.info(headers.getHeaders().getStringValue());
sampler.getHeaderManager().removeHeaderNamed("sign");
sampler.getHeaderManager().removeHeaderNamed("timestamp");
// 打印全部的头部内容
log.info(headers.getHeaders().getStringValue());
//签名拿到的sign值
Map newSignMap = new HashMap();
//***第二个参数每个接口需要更新自己接口采集器的路径
newSignMap = TestSign.getSoulAppSignTest("4030F12A04CF46B7A031A981074FE24C","/capi/customer/smsCode");
String newSign = newSignMap.get("key");
log.info(newSign);
String soultimestamp = newSignMap.get("timestamp");
log.info(soultimestamp);
// new 一个Header对象
signHeader = new Header("sign",newSign);
// 添加 Header 到请求头管理器
headers.add(signHeader);
// new 一个Header对象
timestampHeader = new Header("timestamp",soultimestamp);
// 添加 Header 到请求头管理器
headers.add(timestampHeader);
// 打印全部的头部内容
log.info(headers.getHeaders().getStringValue());