在 JsonPath 中,我看到“$”符号被描述为“指代根对象或元素”的符号。
例子:
JsonPath.read(json, "$.store.book[*].author");
问题:有什么理由不用“$”开始路径吗?
在 Jayway 中,您可以省略“$”。在路径的开头并获得相同的结果。
但是,有什么理由这样做吗?
在 Smartbear.com 的 JSON 文档中,他们指出:
前导 $ 表示根对象或数组,可以省略。例如,$.foo.bar 和 foo.bar 是相同的,$[0].status 和 [0].status 也是如此。
完整的文档可以在这里查看。
所以看起来 $ 符号只是用于样式,这导致了 JSONPath 创建者为什么实现它的问题。