gpt4 book ai didi

java - 无法为客户端形成正确的 JSON 响应

转载 作者:行者123 更新时间:2023-11-28 12:32:36 24 4
gpt4 key购买 nike

我以这种方式发送 GET 请求:

$.ajax({
url: myUrl,
type:"GET",
dataType: "json",
success: callback
});

在服务器端,我形成以下 json 字符串并将其发送到客户端:

"{'composers':
{'composer':
{
'id':2,
'firstName': 'Arcangelo',
'lastName': 'Corelli'
}
},
{'composer':
{
'id':7,
'firstName': 'Antonio',
'lastName': 'Vivaldi'
}
}
}"

客户端什么也得不到! 但是如果我使用 XML 格式作为响应,它就可以正常工作!我设置的内容类型如下:

response.setContentType("application/json");

最佳答案

JSON 需要将 composers 属性设置为数组:

{
"composers": [
{
"composer": {
"id": 2,
"firstName": "Arcangelo",
"lastName": "Corelli"
}
},
{
"composer": {
"id": 7,
"firstName": "Antonio",
"lastName": "Vivaldi"
}
}
]
}

我还推荐一个更精简的版本,它删除了composer属性,因为分配给数组的属性composers包含composer对象是非常直观的。

{
"composers": [
{
"id": 2,
"firstName": "Arcangelo",
"lastName": "Corelli"
},
{
"id": 7,
"firstName": "Antonio",
"lastName": "Vivaldi"
}
]
}

此外,JSON 使用双引号而不是单引号,您需要根据情况进行替换。

当您将来遇到此类问题时,只需将您的 JSON 转移到 json lint为了验证,它会告诉你所有的问题。

关于java - 无法为客户端形成正确的 JSON 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20607878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com