json Thunder Client在基于对象的数组中查找对象,属性等于值

vs91vp4v  于 2022-11-19  发布在  其他
关注(0)|答案(1)|浏览(164)

Selecting/filtering with JSON Query中,OP报告了一个与我类似的问题。在我的例子中,我有这个json响应

{
  "status": "ok",
  "featuresSelected": [
    {  "feature": "x1", "price": "1.23" },
    {  "feature": "u7", "price": "4.56"},
    ... many more 
   ]
}

我想查一下u7的价格是不是4.56,这是我的线

json.featuresSelected[feature=u7].price equal 4.56

// changing it to 
json.featuresSelected[feature=u7].price equal "4.56"
// or
json.featuresSelected[feature="u7"].price equal 4.56
// or
json.featuresSelected[feature="u7"].price equal "4.56"

会传回相同的结果。
但我得到:

Query: json.featuresSelected[feature=u7].price equal to 4.56 => Actual: undefined.

知道我做错了什么吗?

版本

我更新为

  • 迅雷客户端1.20.1
  • Visual Studio程式码版本:1.71.2
46qrfjad

46qrfjad1#

使用另一个api,如下所示的查询可以正常工作。

json.products[name=Oranges].product_url equals /shop/products/10
json.products[name=Pineapples].product_url equals /shop/products/33

这是测试的终点

curl -X GET \
  'https://api.predic8.de/shop/products/' \
  --header 'Accept: */*' \

这将返回如下所示的json

{
  "meta": { "count": 32, "limit": 10, "page": 1
                  , "next_url": "/shop/products/?page=2&limit=10" }
  , "products": [
    { "name": "Oranges", "product_url": "/shop/products/10" },
    { "name": "Pineapples", "product_url": "/shop/products/33" }
 ]
}

测试按预期运行

// returns pass as expected
json.products[name=Apple].product_url equals /shop/products/18

// returns fail as expected
json.products[name=Apple].product_url equals /shop/products/7

它也在我们的内部api中工作。

相关问题