1

所以问题是我不断收到这个错误。它非常断断续续,看起来有点像尼斯湖水怪。由于在我的系统上从未见过它,因此我只收到了错误报告,我检查了堆栈溢出。像我这样的问题只有 2 个,但没有答案。所以这里是代码。

$(function() {
    $.get("http://mysite.com/menu/popoutmenu1.php", {}, function(response) {
        $("body").append(response);
    })
})

当执行该代码时(显然不是我正在使用的代码的精确副本),我收到此错误。

XMLHttpRequest cannot load http://www.mysite.com/menu/popoutmenu1.php. 
Origin http://mysite.com is not allowed by Access-Control-Allow-Origin.

现在这在我的电脑上工作得很好,但在我朋友的电脑上(它在某个网站上)出现了同样的错误!我已经尝试了几台计算机,它们都可以正常工作。我对此很困惑。

如果有人有任何建议会很棒,谢谢。

4

1 回答 1

2

使用相对或根相对 URL(仅路径,无主机名):

$(function() {
    $.get("/menu/popoutmenu1.php", {}, function(response) {
        $("body").append(response);
    })
})

自我执行的SOP合规性,如果你不能那样做,你就会遇到 SOP 问题。

看起来这可能是主机名转发的问题。但无论哪种方式,这都会解决它。

于 2012-10-06T22:41:31.323 回答