我有一段抓取JSON数据的javascript。在本地执行时,一切似乎都运行良好。但是,当我尝试从其他站点访问它时,它不起作用。
这是剧本。
$(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/”找到完全相同文件的副本。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:3)
由于浏览器安全限制,大多数“Ajax”请求都遵循相同的原始策略; 请求无法成功检索来自其他域,子域或协议的数据。
脚本和JSONP请求不受相同的原始政策限制。
您需要使用JSONP来超越同源策略。 jQuery可以实现这一点(参见上述文档页面的其余部分)。