Ajax处理跨域方式

前端之家收集整理的这篇文章主要介绍了Ajax处理跨域方式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

处理跨域方法一——代理

  • 通过在同域名的web服务器端创建一个代理
  • 北京服务器(域名:www.beijing.com)
    上海服务器(域名:www.shanghai.com)

  • 比如在北京的web服务器的后台
    (www.beijing.com/proxy-shanghaiservice.PHP
    调用上海服务器
    (www.shanghai.com/service.PHP
    的服务,然后再把响应结果返回给前端,这样前端调用北京同域名的服务就和调用上海的服务效果相同了。

处理跨域方法二——JSONP

JSONP可用于解决主流浏览器的跨域数据访问的问题。(get)
在www.aaa.com页面中:

<script> function jsonp(json){ alert("json["name"]"); } </script>
<script src="http://www.bbb.com/jsonp.js"></script>

在www.bbb.com页面中:

jsonp({'name':'洪七''age':24});

JQuery中

$.ajax({
    type:"GET",url:"",dataType:"jsonp",jsonp:"callback",success:function(data){},error:function(jqXHR){}
});

处理跨域方法三——XHR2

  • HTML5提供的XHLHttpRequest Level2已经实现了跨域访问以及其他的一些新功能
  • IE10以下的版本都不支持
  • 在服务器端做一些小小的改造即可:
<?PHP
header('Access-Control-Allow-Origin:*');
header('Access-Control;-Allow-Methods:POST,GET');
>

来源:慕课网《Ajax全接触》第6章

原文链接:https://www.f2er.com/ajax/162734.html

猜你在找的Ajax相关文章