在 JSON API 中,返回单个值是否有效,例如123
,"somestring"
或null
?
我阅读了JSON 规范,其中指出:
JSON 建立在两种结构之上:
- 名称/值对的集合。在各种语言中,这被实现为对象、记录、结构、字典、哈希表、键控列表或关联数组。
- 值的有序列表。在大多数语言中,这被实现为数组、向量、列表或序列。
但我不清楚这是否意味着只有对象和数组是有效的 JSON,或者它们自己的值是否也有效(即任何兼容的解析器都会正确解析)。
任何的想法?
不,它无效。如果您想尝试任何东西,请查看此内容。
两种结构如下:
某种键值对:
{
"key": "value"
}
或数组
['value', 'value']
或两者的任意组合
[{"key":"value"}, "value", ["a", "list", {"another":['list']}]]
但是,它们本身的值(数字、字符串、布尔值等)本身是无效的。
123 是名称/值对的集合吗?不它不是。
123 是一个有序的值列表吗?不它不是。
因此,123 不是有效的 JSON 字符串。
编辑:正如 gdoron 所建议的,您可以使用 JSON 解析器(例如此处)来测试您的单个值。