gpt4 book ai didi

javascript - jQuery 无法正确解析 JSON

转载 作者:行者123 更新时间:2023-12-03 22:49:14 26 4
gpt4 key购买 nike

我有一个问题。我构建了一个脚本来向发送回响应的内部链接发出请求。脚本如下所示:

jQuery.get(callUrl, function(data) {
console.log(typeof data);
jQuery.each(data.items, function(i, item) {

console.log(i);
});
}, 'json');

服务器发回的响应如下所示:

{"items":[            
{
"src": "gallery_item_data_Jc4EaLP6vlwd_large.jpg",
"id": "83",
"gallery_id": "30",
"username": "admin"
}]
}

我的问题是当我解析“数据”时,它的类型始终是字符串。我需要它成为一个对象,以便我可以查询它并用我的脚本解析它。为了找出问题的根源,我尝试将我的脚本与 jQuery 文档页面上的示例进行比较:

http://docs.jquery.com/Ajax/jQuery.getJSON

此页面上的请求与我的请求的主要区别在于它使用了 getJSON 方法。当我尝试将其与服务器的 url 一起使用时,我根本没有得到任何响应,因此这是我选择 get 方法并将返回类型指定为“json”的主要原因。

我尝试的另一件事:我查看了 Flickr feed jQuery 示例用于查找它发回的 Content-type header ,认为我的提要可能有错误的 header ,Flickr 提要上就是这样:

Content-Type    application/x-javascript; charset=utf-8

这与我自己的提要上的标题完全相同。所以我很困惑。有谁知道为什么会发生这种情况?

最佳答案

JSON 需要用括号括起来,因此应该是:

({"items":[            
{
"src": "gallery_item_data_Jc4EaLP6vlwd_large.jpg",
"id": "83",
"gallery_id": "30",
"username": "admin"
}]
})

然后您应该能够使用 getJSON,因为这是获取对象数据的最简单方法。但是,您也可以 eval() 字符串,这将返回一个对象。

关于javascript - jQuery 无法正确解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/375204/

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