我需要通过JSON返回页面中的排行榜数据,这是正确的结构,是这样的
{
pages: [
{
[
{user: John,
rating:11},
{user: Bob,
rating: 20},
{user: Andy,
rating: 30},
...
]
},
{
[
{user: Sally,
rating: 110},
{user: Peter,
rating: 115},
{user: Jim,
rating: 350},
...
]
},
...
]
}
或者这是(正确的JSON )
{
"pages": [
[
{
"user": "John",
"rating": 11
},
{
"user": "Bob",
"rating": 20
},
{
"user": "Andy",
"rating": 30
}
],
[
{
"user": "Sally",
"rating": 110
},
{
"user": "Peter",
"rating": 115
},
{
"user": "Jim",
"rating": 350
}
]
]
}
更新 感谢所有的快速答案,是的,我确实手工构建了JSON,这显然不是一个好主意,正如你们有些人指出的那样。第二个选项是正确的JSON,我已经使用正确的JSON结构更新了它,以便将来可能正在阅读它。
答案 0 :(得分:2)
后者是正确的,但您需要用双引号括起所有字符串。在第一个右方括号之后,您还使用了句点而不是逗号。
您可能希望使用JSONLint来验证您的JSON。
答案 1 :(得分:1)
你的第一个例子没有多大意义:pages
是一个数组,其元素是对象,但没有键值对。你的第二个例子更有意义:pages
是一个数组,其中元素又是另一个包含对象列表的数组。
请注意,您的示例都不是有效的JSON。如前一段所述,您的第一个示例包含没有键值对的对象。此外,在两个示例中,都没有引用字符串。在JSON中,必须引用每个字符串,无论是键还是值。
答案 2 :(得分:1)
您可能想要查看此JSON验证程序:) http://www.jsonlint.com/
答案 3 :(得分:0)
首先,第一个选项是无效的JSON。数组:
{
pages: [
{
[ <== HERE
...需要一个名字。 E.g。
{
pages: [
{
"SomeName": [
另外,假设John,Bob,Andy等是字符串,那么它们应该是:
[
{user: "John",
rating:11},
{user: "Bob",
rating: 20},
{user: "Andy",
rating: 30},
...
]
有些人还会争辩说你的词典成员名称应该被引用。