我有一个相当简单的jQuery调用脚本
$.post("http://scoding.com/dev/est/s/test.php", {'call[]' : [$ip]}, function(data){
if(data == "false") {
alert('The IP you searched for was not found!2');
} else {
//found
}
});
这在我的机器(防火墙)上失败,但它在我的测试服务器1上运行,在服务器2上失败,firebug返回http_code 200但显示为红色?我不确定防火墙如何影响这个,因为它的用户端不是服务器端?调用是从服务器到另一台服务器吗?
答案 0 :(得分:0)
您不能在跨域上执行ajax功能。
由于浏览器安全限制,大多数“Ajax”请求都是主题 同源政策;请求无法成功检索 来自不同域,子域或协议的数据。
答案 1 :(得分:0)
.post()
无法通过一些非常合理的安全原因进行跨域调用。
JSONP可以进行跨域通信,请参阅http://www.ibm.com/developerworks/library/wa-aj-jsonp1/以获取更多信息,并在此处查看其使用示例http://remysharp.com/2007/10/08/what-is-jsonp/