beanshell处理返回信息01
接口返回信息如下
{
"responseCode": "200",
"message": "success",
"data": {
"oneCallPriceFlag": "true",
"solutionDesc": "主板故障,去高级维修中心维修主板",
"solutionCode": "SP123123",
"skuCode": "123456ABC"
"solutionDescEn": "0716:新增1个服务",
"repairPlans": [{
"code": "RT04",
"name": "人为损转保修"
},
{
"code": "RT05",
"name": "保外维修"
}
],
"solutionType": {
"solutionTypeCode": "REPAIR",
"name": "维修类"
},
"repairMode": {
"repairModeCode": "BACK_FACTORY",
"name": "返厂维修"
}
}
}
把solutionCode和solutionTypeCode用分号分隔拼接写入D:\Temp\data3.csv文件中,beanshell代码如下
import org.json.*; String response_data = prev.getResponseDataAsString(); //获取请求返回值。注意此处只能获取到String类型; log.info(response_data); JSONObject data_obj = new JSONObject(response_data).get("data"); //将String类型的返回值构造成JSONObject对象,才可使用Java对象的方法对其进行操作; String solutionCode = data_obj.get("solutionCode").toString(); //获取data.solutionCode; String solutionTypeCode = data_obj.get("solutionType").get("solutionTypeCode").toString(); log.info(solutionCode); //Log中显示的字段顺序会与“response_data”中的字段顺序有差异,JSON串的正确与否无关字段顺序; FileWrite fstream = new FileWrite("D:\\Temp\\data3.csv",true); BufferedWrite out = new BufferedWrite(fstream); out.write(solutionCode+";"+solutionTypeCode); out.close(); fstream.close();

浙公网安备 33010602011771号