jmeter,beanshell使用org.json处理json数据

操作json对象 

//前3行基本是固定写法不用管他

//导入org.json包
import org.json.*;

//获取响应字符串数据
String response = prev.getResponseDataAsString();
//转为JSON对象
JSONObject responsejson = new JSONObject(response);

响应数据格式:responsejson = "{'name':'卢本伟','age':24}";

根据键从json对象中获取值
//String data = responsejson.getString("data");
修改对象

 responsejson.put("json字段名称",1);

删除JSON的值

responsejson.remove("json字段名称");

响应数据格式

responsejson  ="{'Hero':{'name':'Fizz','position':'Mid','charactor':'killer'}}";

先使用getJSONObject()获取JSONObject对象 , 然后进一步getXxx()解析属性

JSONObject Hero = responsejson .getJSONObject("Hero");

String name = Hero.getString("name");

响应数据格式responsejson  == "{'nickNames':['五五开','芦苇','white']}";

先使用getJSONArray()获取JSONArray对象,然后进一步遍历

JSONArray nickNames = responsejson.getJSONArray("nickNames");
for(Object nickName:nickNames){
    vars.put("nickName",nickName)
}

响应数据格式responsejson   = "{'Honors':[{'year':2011,'name':'TGA总决赛冠军'},{'year':2013,'name':'S3全球总决赛中国区冠军'},{'year':2013,'name':'S3全球总决赛亚军'}]}";

一层层获取即可:先getJSONArray,然后getJSONObject,到了属性,就是getXxx()


JSONArray honors = responsejson.getJSONArray("Honors");
for(int i=0; i<honors.size(); i++){
    JSONObject honor = (JSONObject) honors.get(i);
    int year = honor.getIntValue("year");
    String name = honor.getString("name");
    System.out.println(year + "..." + name);
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值