我想在div中显示一个新页面但是access-control-allow-origin问题。
例如,我尝试显示www.naver.com
=============================================== =========================
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script src="js/jquery.ajax-cross-origin.min.js"></script>
<script>
$(document).ready(function() {
var url = 'http://www.naver.com';
jQuery.ajax({
type:"GET",
url : url,
dataType:"jsonp",
crossOrigin: true,
success : function(data) {
console.log('success');
console.log('success:'+url);
},
error : function(data) {
console.log('error');
}
});
$('#openPage').load(url);
});
</script>
<style>
#btn{
width: 100%;
height:50px;
}
</style>
</head>
<body>
<!-- <div id="btn">
<button>button</button>
</div> -->
<div id='openPage'></div>
</html>
答案 0 :(得分:0)
如果您提出请求的网站允许您的网站获得此权限,则您只能提出跨源AJAX请求。 Naver.com没有,所以你不能。没有办法解决这个问题。如果您只是想显示一个页面并且不关心JavaScript访问它,那么iframe就是最接近的。
答案 1 :(得分:0)
响应http标头必须包含&#34; Access-Control-Allow-Origin&#34;,这应该由Naver.com完成。由于您无法更改,因此您可以构建代理服务器以加载Naver.com的内容并发送到您的页面。