1

我有一段 javascript 可以抓取 JSON 数据。在本地执行时,一切似乎都运行良好。但是,当我尝试从其他站点访问它时,它不起作用。

这是脚本。

$(function(){
    var aT = new AjaxTest();
    aT.getJson();
});

var AjaxTest = function()
{
    this.ajaxUrl = "http://mydeveloperpage.com/sandbox/ajax_json_test/client_reciever.php";

    this.getJson = function(){
        $.getJSON(this.ajaxUrl, function(data){
            $.each(data, function(i, piece){
                alert(piece);
            });
        });
    }
}

您可以在“ http://mydeveloperpage.com/sandbox/ajax_json_test/ ”找到完全相同文件的副本。

任何帮助将不胜感激。

谢谢!

4

1 回答 1

3

文档中:

  • 由于浏览器安全限制,大部分“Ajax”请求都受同源策略的约束;请求无法从不同的域、子域或协议成功检索数据。

  • 脚本和 JSONP 请求不受同源策略限制。

您将需要使用JSONP来通过同源策略。jQuery 可以做到这一点(参见上述文档页面的其余部分)。

于 2010-06-14T16:19:40.290 回答