jmeter 提取json 里面的转义的字符串

使用beanshell 脚本工具进行转义 

响应的json需要取出 workOrderCode的值
{
    "timeStamp": "2024-02-27 16:14:09",
    "data": {
        "object": {
            "asyncResult": "{\"success\":true,\"errorCode\":\"0\",\"errorMessage\":\"\",\"timeStamp\":\"2024-02-27 16:14:08\",\"data\":{\"object\":{\"total\":1,\"page\":1,\"pageSize\":20,\"totalPage\":1,\"list\":[{\"workOrderStatusName\":\"未投产\",\"productionOrderCode\":\"MO2024022730024\",\"workOrderCode\":\"SFC2024302270009\",\"processCode\":\"s123\",\"OrgWorkshop_57\":{\"workshopName\":\"老默鱼铺\",\"workshopCode\":\"LMYP\"},\"workshopName\":\"老默鱼铺\",\"operationName\":null,\"workOrderId\":3372,\"workshopCode\":\"LMYP\",\"workOrderStatus\":\"UNSTART\",\"SysDictValue_40\":{\"dictValue\":\"UNSTART\",\"dictLabel\":\"未投产\",\"dictType\":\"object_work_order\"},\"_id\":\"3372\"}]}}}",
            "asyncResultType": "COMMON",
            "progress": 10000,
            "id": 70969402679297
        }
    },
    "success": true,
    "errorMessage": "",
    "errorCode": "0"
}

// 导入必要的类库
import org.apache.commons.text.StringEscapeUtils;
import org.json.JSONArray;
import org.json.JSONObject;

// 从前一个响应中获取数据
String prevResponse = prev.getResponseDataAsString();
log.info("prevResponse:" + prevResponse);

// 解析 JSON 格式的响应数据
JSONObject prevResponseJson = new JSONObject(prevResponse);
JSONObject dataObject = prevResponseJson.getJSONObject("data").getJSONObject("object");
String asyncResult = dataObject.getString("asyncResult");
log.info("asyncResult: " + asyncResult);

// 解析 asyncResult 字段中的 JSON 数据
JSONObject asyncResultJson = new JSONObject(asyncResult);
JSONArray listArray = asyncResultJson.getJSONObject("data").getJSONObject("object").getJSONArray("list");
JSONObject firstItem = listArray.getJSONObject(0);
String workOrderCode = firstItem.getString("workOrderCode");

// 输出从响应数据中提取的 workOrderCode
log.info("workOrderCode: " + workOrderCode);

// 将 workOrderCode 存储到 JMeter 变量中,以便在后续请求中使用
vars.put("workOrderCode", workOrderCode);

  • 14
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值