Javascript Jquery不适用于外部域

Javascript Jquery不适用于外部域,javascript,jquery,ajax,Javascript,Jquery,Ajax,我在Jquery中有一个函数,可以尝试从页面获取html: $.ajax({ type:'GET', url: 'http://www.google.com', success: function( data ) { alert( data ); } }); 为什么不起作用? 在firebug中,我看到了通信头。您正在违反。为了避免SOP,uou可能需要服务器端脚本(在主机上)来加载外部url并将数据返回到客户端脚本,或者使用提供结果的服务。出于安全原因,Jav

我在Jquery中有一个函数,可以尝试从页面获取html:

$.ajax({
  type:'GET',
  url: 'http://www.google.com',
  success: function( data ) {
        alert( data );
  }
});
为什么不起作用?
在firebug中,我看到了通信头。

您正在违反。为了避免SOP,uou可能需要服务器端脚本(在主机上)来加载外部url并将数据返回到客户端脚本,或者使用提供结果的服务。

出于安全原因,Javascript不允许页面从外部域加载页面。这些安全原因是为了防止用户表单劫持、xss攻击等。如果您仍然想加载外部页面,可以使用iframes,否则您的后端将需要openId之类的东西

由于安全冲突,不允许跨域$.ajax。在jQuery中可以执行的唯一跨域调用是JSONP请求


请阅读我对这个问题的回答:

您不能对外部URL跨域安全问题执行Ajax请求。查看JSONP解决此问题的另一种方法是调用域上的服务器端方法,以代理对google.composible的调用