繁体   English   中英

交叉请求时出错:“ Access-Control-Allow-Origin不允许原产”?

[英]Error on cross request: “Origin is not allowed by Access-Control-Allow-Origin”?

我正在尝试从另一个网站加载内容:

<div id='include-from-outside'></div>
<script type='text/javascript'>
  $('#include-from-outside').load('http://lujanventas.com/plugins/banner/index.php&callback=?');
</script> 

但我收到此错误:

XMLHttpRequest cannot load http://lujanventas.com/plugins/banner/index.php&callback=?. Origin http://lventas.com is not allowed by Access-Control-Allow-Origin.

如何防止它发生?

有两种选择:

1:使http://lujanventas.com返回正确的CORS标头-http: //enable-cors.org/

2:使用您的服务器而不是浏览器中的js请求html- http://www.daniweb.com/web-development/php/code/216729/php-proxy-solution-for-cross-domain-ajax -scripting

您使用的网址表明该网站支持JSONP(请参阅http://en.wikipedia.org/wiki/JSONP )。 如果是这样,您应该可以这样做:

<script type="text/javascript">
    function handleResponse(json){
       var data = JSON.parse(json);
       ...handle data...
    }
</script>
<script src="http://lujanventas.com/plugins/banner/index.php?callback=handleResponse"></script>

使用jquery ajax来查询加载lujaventas内容的php文件,然后ajax回调将是lujaventas内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM