当前位置:网站首页>[JMeter]Beanshell解析Json格式的接口响应数据

[JMeter]Beanshell解析Json格式的接口响应数据

2022-08-10 17:40:00 洛央虲

json包下载
响应消息体格式

{
    "body":{
    "list":[{
    "type":"1","shst":"http://aaaa.com"},{
    "type":"2","shst":"http://bbbb.com"}]}}

beanshell代码

import org.json.JSONObject;
import org.json.JSONArray;

//获取请求返回值。注意此处只能获取到String类型;
String response_data = prev.getResponseDataAsString(); 
//将String类型的返回值构造成JSONObject对象,才可使用Java对象的方法对其进行操作;
JSONObject data_obj = new JSONObject(response_data); 
//urllist为数组
JSONArray data_array = data_obj.get("body").getJSONArray("list");   

for(i=0; i<data_array.length(); i++) {
    
	 // 取出来要转json格式在取值
	JSONObject jsonTemp = (JSONObject)data_array.getJSONObject(i);
	// 以下判断语句是根据我需要实现的内容来进行判断的
	if (jsonTemp.get("type").equals("shst")) {
    
		String url = jsonTemp.get("user");
		log.info(url);
		// 通过put 设置成全局变量,在下一个接口使用${}进行调用
		vars.put("url",url);
	}
}

执行效果
在这里插入图片描述
在这里插入图片描述

原网站

版权声明
本文为[洛央虲]所创,转载请带上原文链接,感谢
https://blog.csdn.net/mengwuyoulin/article/details/126243272