
1、JSON提取器
若響應(yīng)數(shù)據(jù)格式為JSON,也可以用JSON提取器來提取需要關(guān)聯(lián)的數(shù)據(jù)。
▲ 配置項
Apply to:
與前面講過的正在表達式提取器中用法相同,不再贅述。
Names of created variables:
將JSONPath提取的內(nèi)容保存到指定變量,多個變量之間用“;”分隔(注意不是用,號)。
JSON Path expressions:
用于提取響應(yīng)數(shù)據(jù)的JSONPath表達式,多個JSONPath表達式之間用“;”分隔(注意不是用,號)。
Match No.(0 for Random):
若JSONPath有多個匹配項,可以選擇提取哪個匹配項。
0表示隨機(默認值)
-1表示提取所有匹配項,各匹配項可用var_1,var_2,var_3,... ,var_n表示(var為保存提取內(nèi)容的變量名)
i(i=1,2,3,...)表示第i個匹配項,若X大于匹配總數(shù),在設(shè)置了缺省值的情況下返回缺省值,否則返回空。
Compute concatenation var (suffiffiffix _ALL):
勾選此選項,若JSONPath返回多個匹配項,則將各匹配項連接起來保存在var_ALL的變量中,其中var為保存提取內(nèi)容的變量名。
Default Values:
若JSONPath沒有返回任何結(jié)果,則顯示設(shè)置的缺省值。注意缺省值可以不設(shè)置,一旦設(shè)置,需要為每個變量設(shè)置缺省值,多個缺省值之間用“;”分隔(注意不是用,號)。

2、應(yīng)用案例
沿用上面的例子。
其實上例中第二步驟:設(shè)置查詢條件(比如按商品品牌)搜索商品,響應(yīng)數(shù)據(jù)為JSON,也可以使用JSON提取器提取數(shù)據(jù)。
{
"error": 0,
"message": "",
"content": "<!-- $Id: goods_list.htm 17126 2010-04-23 10:30:26Z liuhui $ -- >\r\n\r\n<table cellpadding= ... <\/table>\r\n\r\n",
"filter": {
"cat_id": 0,
"intro_type": "",
"is_promote": 0,
"stock_warning": 0,
"brand_id": 0,
"keyword": "",
"suppliers_id": "",
"is_on_sale": "",
"sort_by": "goods_id",
"sort_order": "DESC",
"extension_code": "",
"is_delete": 0,
"real_goods": 1,
"record_count": "20",
"page_size": 15,
"page": 1,
"page_count": 2,
"start": 0
},
"page_count": 2
}
現(xiàn)在要從響應(yīng)數(shù)據(jù)中提取錯誤代碼,錯誤消息,返回內(nèi)容三部分數(shù)據(jù),JSON提取器設(shè)置如下:
