繁体   English   中英

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

[英]AJAX get request sometimes fails on iOS Safari

我正在尝试显示我使用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提要,似乎有效,但是将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野生动物园中无法正确处理的事情,但是切换到POST对我有用...以防万一其他人遇到同样的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM