检查JSONPath是否为空字符串

时间:2017-12-12 09:48:51

标签: jsonpath

我有以下JSON字符串:

{
  "myKey": "myValue"
}

我想检查此字符串是否为空。我可以这样做:

$.myKey

获取myKey的值。我已经尝试将其更改为

$.[?(@.myKey.length()>0)]

(根据本主题Expression to filter out elements with empty arrays using `jsonPath`)或甚至是:

$.myKey.length()>0

但是我得到的错误是它不是有效的JSONPath表达式。

我添加" JsonPath Match"到我的项目中的测试步骤。当我把它设置为

$.myKey

并按"从当前"中选择,它有效。对于

$.[?(@.myKey != '')]

当我按下"从当前"中选择时,我得到

  

" JsonPath表达式无效"

我使用SoapUI 5.4.0,但我不知道如何检查其JsonPath实现。如果字符串为空,我想得到假。

如何检查myValue是否为空?谢谢!

1 个答案:

答案 0 :(得分:1)

The following jsonpath filter: $.[?(@.myKey != '')] will return the document if the attribute myKey is not an empty string.

You can verify this using the Jayway JsonPath evaluator

如果这......

  

如何检查myValue是否为空?

...表示类似:“我只想在填充myKey时返回文档”,然后上面的jsonpath过滤器就足够了。