eolinker响应预处理:传参解决方法(响应数据截取后设置为变量)
特别注意:需要使用全局变量或者预处理前务必阅读本链接https://www.cnblogs.com/becks/p/13713278.html
一、案例1
1、场景描述:
后一个请求需要前一个请求提供的数据来构造请求数据,如新建商品后返回商品ID,访问商品需要获取ID来构造请求,实现商品页请求测试{
"Status": true,
"Msg": "266685",
"Data": null
}
2、用到的代码:
response=JSON.parse(response);
env.globalParams["Msg"]=response["Msg"];
3、步骤
(1)前一个请求(后文称A请求)设置“代码注入”,输入步骤“2”内的脚本,将返回值设置为全局变量“Msg”。“Msg”代表A请求返回的数据,案例里A请求为新建商品,返回的Msg为参数名称,值为商品ID
(2)后一个请求(后文称B请求)在请求URL内加上变量“Msg”,书写格式为“{{Msg}}”,整个请求URL为
store2948.xiaokeduo.com/did1115990/Product/Details/{{Msg}}
如此即实现变量传参应用
二、案例2
1、需要取出来的值存储在某一个值的下一级,如下面的unicode,处于data后的括号内
2、获取unicode的值的代码为
response=JSON.parse(response);
env.globalParams["unicode"]=response["Data"]["unicode"];
即在data后面加上下一级值Unicode
三、数组取值
1、下图接口返回数据内有一串数组,而后面的接口则需要从这串数组内取出一个值应用该值。
2、比如取第一个“id”43
3、写法如下图,其中的“0”代表取第一个“id”的值
response=JSON.parse(response);
env.globalParams["weid"]=response["Data"]["PageList"][0]["Id"];
4、如果需要取值的数据,不在数组最前位置,则取值规则为
response=JSON.parse(response);
env.globalParams["Coupon"]=response["Data"][response["Data"].length-1]["Id"];
上面的内容代表,取Data数组内的最后一个id指的内容,设置为全局变量