ajax跨域

跨域
js出于安全方面的考虑,不允许跨域调用其他页面的对象,
主域名、子域名、协议、端口号相同的页面调用不算跨域,
主域名、子域名、端口号、协议中任意一个不同的调用叫做跨域
处理跨域方法一——代理
1.北京服务(域名:www.beijing.com)
2.上海服务(域名:www.shanghai.com)

在北京的web服务器的后台(www.beijing.com/proxy-shanghaisevice.php)来调用上海服务器(www.shanghai.com、sevice.php)的服务,然后把响应结果给前端,前端直接调用北京同域名的服务和调上海得相同了
处理跨域方法二——jsonp(只支持get请求不支持post请求)

//在www.aa.com页面中:
<script>
    function jsonp(json){
    alert(json["name"])
    }
</script>
<script src="www.bb.com/jsonp.js"></script>
//在www.bb.com页面中:
jsonp({
    'name':'hongqi',
    'age':'2222'
})

实例中的应用:

$.ajax({
    dataType:"jsonp",
    jsonp:"callback"
    //后端要获取:$jsonp=$_GET["callback"];  
    //后台返回值:
    //$result=$jsonp.'({"success":"false","msg":"没有找到"})'
})

处理跨域方法三——xhr2(ie10以下不支持)
在服务器端做一些改造:
header(‘Access-Control-Allow-Origin:*’);
header(‘Access-Control-Allow-Methods:POST,GET’)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值