在「Please. Don't Patch Like An Idiot.」這篇文章裡看到「JavaScript Object Notation (JSON) Pointer」(RFC 6901)。
類似 XML 的 XPath,JSON Pointer 可以查詢 JSON object。
比較特別是拿 ~
這個符號當特殊字元,原本的 ~
變成 ~0
,而 /
變成 ~1
,所以這個 JSON object:(取自 RFC 內的範例)
{ "foo": ["bar", "baz"], "": 0, "a/b": 1, "c%d": 2, "e^f": 3, "g|h": 4, "i\\j": 5, "k\"l": 6, " ": 7, "m~n": 8 }
使用這些 JSON pointer 會得到後面這些結果:
"" // the whole document "/foo" ["bar", "baz"] "/foo/0" "bar" "/" 0 "/a~1b" 1 "/c%d" 2 "/e^f" 3 "/g|h" 4 "/i\\j" 5 "/k\"l" 6 "/ " 7 "/m~0n" 8
規格還蠻簡單的...