为何该JSON格式无效?需实现两层嵌套结构
为什么你的JSON格式无效?
你这段JSON报错的核心问题很明确:你在顶层对象里直接放了一个没有对应键的嵌套对象,这完全违反了JSON的基本语法规则!
我们先看你写的代码:
{ "userId": "008", { "sku": "6157068", "inputText":"what's that?" } }
在"userId": "008"之后,你直接塞了一个{...}对象,但这个对象没有自己的键名——JSON的对象结构要求每一个值都必须绑定一个明确的键,解析器根本不知道这个嵌套对象应该归属于哪个属性,自然会判定它无效。
要实现你想要的两层嵌套结构,只需要给这个内层对象加一个合适的键就行,比如叫"queryInfo"或者你业务里需要的名称。修正后的JSON应该是这样的:
{ "userId": "008", "queryInfo": { "sku": "6157068", "inputText": "what's that?" } }
顺便给你提几个JSON的基础规则,避免以后踩坑:
- JSON的顶层结构只能是对象(
{})或者数组([]) - 对象内部的每一项都必须是
"键": 值的键值对格式,值可以是字符串、数字、布尔值、null、对象或者数组 - 嵌套对象同样要遵循键值对规则,绝对不能出现无键的独立对象
内容的提问来源于stack exchange,提问作者user697911
相关产品推荐
相关产品推荐

