gpt4 book ai didi

javascript - AJAX 获取请求在 iOS Safari 上有时会失败

转载 作者:行者123 更新时间:2023-11-28 07:34:57 25 4
gpt4 key购买 nike

我正在尝试使用 jQuery AJAX 在网站的另一个页面上显示我创建的 json 提要。在大多数情况下,我使用以下代码可以完美地工作,但在 iOS Safari 上它偶尔无法工作(大约十分之一)。当我说它不起作用时,文档中不会附加任何内容,并且我的“.items”元素留空。

这是我的 jquery 脚本,我在窗口加载时运行它:

$.ajax({
type: "GET",
url : '/json',
success: function (data) {
var json = JSON.parse(data.replace(/"/g, '"'));
$.each(json.data, function (index, element) {
$(".items").append("<p>" + json.data[index].Title + "</p>");
});
}
});

这是 JSON feed,它似乎是有效的,但是当将 dataType:'json' 添加到我的 ajax 请求时,没有返回任何内容:

{
"data":
{
"1": {
"Title": "Page 1",
"Url": "/page-1"
},

"2": {
"Title": "Page 2",
"Url": "/page-2"
},

"3": {
"Title": "Page 3",
"Url": "/page-3"
}
}
}

奇怪的是,当这不起作用时,不会显示任何错误消息,所以我不知道实际原因是什么。我怀疑 JSON 格式不正确,或者 JSON 由于某种原因没有被解析。在桌面浏览器上它总是有效,所以这让我相信这些不是原因,也许这只是一个 iOS 错误。

谁能帮我解决这个问题吗?有没有办法检查我的 json 是否已正确解析?

最佳答案

我遇到了完全相同的问题,即使对于静态有效的 JSON 文件,iOS Safari 也会返回“”...所以我在我们的代码之间寻找任何类似的内容,并且由于我们都使用“GET”,我决定尝试一下POST,因为为什么不……果然,POST 总是通过 ajax 返回我的 json,而 GET 却没有……

这绝对是 iOS safari 中无法正确处理的问题,但切换到 POST 对我有用......以防万一其他人遇到同样的问题。

关于javascript - AJAX 获取请求在 iOS Safari 上有时会失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28717151/

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