jquery加载远程html页面

时间:2012-06-20 16:03:47

标签: jquery get xmlhttprequest cross-domain

我想加载远程html页面,然后解析它。有很多这样的例子,但任何人都可以解释为什么我收到这个错误:

  

XMLHttpRequest无法加载http://html.comsci.us/examples/blank.html。   Access-Control-Allow-Origin不允许使用null。

当我尝试加载这个html页面时:

<!DOCTYPE HTML>
<html>
  <head>
  <script type="text/javascript"
     src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  <script>
      $(document).ready(function(){ 
        $.get('http://html.comsci.us/examples/blank.html', function(data) {
           alert('Load was performed.');
        }); 
      });
    </script>
  </head>
  <body>
  </body>
</html>

2 个答案:

答案 0 :(得分:1)

您需要在自己的服务器上创建一个请求该页面的脚本,然后使用您的ajax请求调用该脚本。

答案 1 :(得分:0)

您遇到的安全限制称为“同源策略”或“跨域访问”。

解决方法:

  • 创建查询服务器端或使用客户端应用程序
  • 如果两个网站都同意访问权限,您可以使用CORS,在其他网站上运行代码
  • JSONP,如果其他网站支持