使用“和”语句从动态有效载荷中提取json数据

时间:2019-05-30 08:28:55

标签: json jmeter

我想从动态JSON中提取值。

每次执行时,此生成都是不同的。 我需要获取以下信息:XLIfccMNLv1asVam3QuatowCmrp8IYuE0FUDMYncegs = 它是在Json文件的不同位置生成的,具有不同的值

我尝试过。

$.payload[?(@.eventType == 'AAA')].entityId

运行正常。 但是,我想要更强大的查询。

是否可以在查询中使用&&语句,例如:

$.payload[?(@.eventType == 'AAA')&&(@.outgoingCurrency== 'EUR')].entityId

我的有效载荷:

{
   "payload":[
      {
         "entityId":"qvr_IlDhTdzldeccxguNR84sE0N78DUfNGzwH-3pY7Y=",
         "accountHolderId":"dvwxpTxVHdo2n1d5ytO6WyhnI2nuaEuzsh47agPpSFU=",
         "processorType":"DUMMY",
         "eventType":"AAA",
         "outgoingCurrency":"USD",
         "holdPeriodInHours":11,
         "disabled":false
      },
      {
         "entityId":"XLIfccMNLv1asVam3QuatowCmrp8IYuE0FUDMYncegs=",
         "accountHolderId":"Xoo8uAM90qRT7kceDUJBIIqafUuUdH2fH_Ia2z1TY5w=",
         "processorType":"DUMMY",
         "eventType":"BBB",
         "outgoingCurrency":"EUR",
         "holdPeriodInHours":10,
         "disabled":false
      },
      {
         "entityId":"yBoHvYkyszaQpaFe1zvqCY416_vYiq7iivA9bWJhiTg=",
         "processorType":"BMO_CPR",
         "eventType":"AAA",
         "disabled":false
      }

   ]
}

1 个答案:

答案 0 :(得分:2)

您需要在表达式内使用操作 && : $ .payload [?(@。outgoingCurrency =='EUR'&& @ .eventType =='AAA')]。entityId。

有关更多详细信息,请参见:https://goessner.net/articles/JsonPath/