jmeter - 动态处理get参数

get 方式的签名生产,困然了我2天,今天终于解决了,记录如下

var args = sampler.getArguments();
var size = args.getArgumentCount();

var argObj = {}
for(var i=0; i< size; i++) {
    var name = args.getArgument(i).getName();
    var value = args.getArgument(i).getValue();
    log.info(name);
    log.info(value);
    argObj[name] = value;   
}
var argsStr = JSON.stringify(argObj);
log.info(argsStr);

var s = doSign(argsStr)
log.info(s)
sampler.getArguments().removeArgument("sign");
sampler.addArgument("sign",s); 


function doSign(playload){
    return playload;    
}

下面的知识点是关键

import org.apache.jmeter.config.Argument;

sampler.getArguments().removeArgument("page_submission_id");
sampler.addArgument("page_submission_id","8743718386872"); 

参考: https://stackoverflow.com/questions/35793287/in-jmeter-java-api-how-to-set-post-form-values-in-a-preprocessor-sampler

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容