下面是我需要处理的JSON格式的服务器响应,在这个JSON中,我需要在下一个请求中传递一些对象,我可以成功地在第一个请求中传递这些对象,但问题是在下面的JSON中随机化
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sword of Honour",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "test_title",
"price": 12.99
},
{
"category": "fiction",
"author": "Herman Melville",
"title": "Sword of Honour",
"isbn": "0-553-21311-3",
"price": 8.99
},
{
"category": "fiction",
"author": "J. R. R. Tolkien",
"title": "India",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
},
"expensive": 10
}
如果我应用$..book[0][?(@.title==‘荣誉之剑’)]条件,我会看到成功的输出
测试_1={“类别”:“参考”,“标题”:“荣誉之剑”,“作者”:“奈杰尔·里斯”,“价格”:8.95}测试_2={“类别”:“小说”,“标题”:“荣誉之剑”,“作者”:“赫尔曼·梅尔维尔”,“价格”:8.99,“ISBN”:“0-553-21311-3”}
如果我应用$..book[0][?(@.title==‘荣誉之剑’)].作者条件我看到成功的输出TEST_1=Nigel Rees TEST_2=Herman Melville
但是我想为书名==‘荣誉之剑’的书同时提取作者的姓名和价格。实际输出=能够在条件为$..book[0][?(@.title==‘荣誉之剑’)]的情况下检索一个值。作者预期输出=我希望从同一列表中随机接收两个值。迭代1-test_1={“作者”:“Nigel Rees”,“Price”:8.95}迭代2-test_2={“作者”:“Herman Melville”,“Price”:8.99,}迭代3-test_2={“Author”:“Herman Melville”,“Price”:8.99,}
我也尝试过V函数,但只得到了一个值。(book{__V([?(@.title==‘荣誉之剑’)]_${__Random(1,${title_matchNr},)},)})
1条答案
按热度按时间6qftjkof1#
1.将JSR223 PostProcessor添加为返回上述JSON的请求的子级
1.将以下代码放入脚本区域:
1.现在您应该能够使用__V()和__Random()函数组合引用随机的作者/价格对,如:
${__V(test_${__Random(1,${test_matchNr},)},)}
更多信息: