jQuery .post()在本地失败,但在服务器1上失败,在服务器2上失败?

时间:2011-11-08 16:25:58

标签: jquery html

我有一个相当简单的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但显示为红色?我不确定防火墙如何影响这个,因为它的用户端不是服务器端?调用是从服务器到另一台服务器吗?

2 个答案:

答案 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/