我想加载远程html页面,然后解析它。有很多这样的例子,但任何人都可以解释为什么我会收到此错误:
XMLHttpRequest 无法加载 http://html.comsci.us/examples/blank.html。 访问控制允许原点不允许
源空。
当我尝试加载此 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>
您需要在自己的服务器上创建一个请求该页面的脚本,并使用 ajax 请求调用该脚本。
您遇到的安全限制称为"同源策略"或"跨域访问"。
解决方法:
- 创建查询服务器端或使用客户端应用程序
- 如果两个站点都同意访问,则可以使用 CORS,在其他站点上运行代码
- JSONP 如果其他站点支持它