掃二維碼與項目經理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網交流
本文就來詳細介紹一下如何利用BeanShell腳本從響應結果中提取所需參數(shù)。

成都創(chuàng)新互聯(lián)公司一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務為基礎,以質量求生存,以技術求發(fā)展,成交一個客戶多一個朋友!為您提供成都網站制作、成都做網站、外貿營銷網站建設、成都網頁設計、成都微信小程序、成都網站開發(fā)、成都網站制作、成都軟件開發(fā)、app軟件定制開發(fā)是成都本地專業(yè)的網站建設和網站設計公司,等你一起來見證!
在JMeter中,我們經常需要通過前一個請求的響應結果來獲取一些關鍵信息,然后將這些信息作為參數(shù)傳遞給下一個請求。而使用BeanShell腳本可以很方便地實現(xiàn)這個過程。本文就來詳細介紹一下如何利用BeanShell腳本從響應結果中提取所需參數(shù),并將它們傳遞到下一個請求中。
首先,我們需要在JMeter中添加一個Sampler(比如HTTP Request),發(fā)送請求并接收響應。假設我們要從該響應結果中獲取兩個值:token和userId。
1. 在HTTP Request的“Response”選項卡里勾選“Save response as MD5 hash”,以便于后面查看變量名稱。
2. 在HTTP Request的“Beanshell PostProcessor”選項卡里編寫以下代碼:
```java
import org.apache.commons.lang3.StringUtils;
String response = new String(data);
if(StringUtils.isNotBlank(response)){
vars.put("token", "");//清空舊數(shù)據
vars.put("userId", "");//清空舊數(shù)據
//解析response得到token和userId
JSONObject jsonObject = JSONObject.fromObject(response);
if(jsonObject.containsKey("data")){
JSONObject dataObject = jsonObject.getJSONObject("data");
if(dataObject.containsKey("token")){
String tokenValue = dataObject.getString("token");
vars.put("token", tokenValue);//保存新數(shù)據
}
if(dataObject.containsKey("user_id")){
String userIdValue = dataObject.getString("user_id");
vars.put("userId", userIdValue);//保存新數(shù)據
}
}
```
上述代碼的作用是解析響應結果,從中提取出token和userId并將它們存儲在變量中。
3. 在下一個請求(比如另一個HTTP Request)的參數(shù)化選項卡里使用變量名來引用這些值。如:${token}、${userId}
通過以上步驟,我們就可以成功地從響應結果中獲取所需參數(shù),并將它們傳遞到下一個請求中了。
總結:

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網交流