跨域指jsonp

在前端中ajax时无法实现跨域的

        一个域名下的ajax请求无法通过正常的ajax去获取其他站点的资源,但是请求是会被发送到服务器的,可以通过抓包看到,而且数据也是正常的被返回的,但是ajax拿不到返回对象,这是服务器的"同源策略做的限制"

       那么如何实现跨域请求呢?jsonp 或cros,jsonp 是通过前端的javascript标签中src的开放策略去实现的,cros 因该是通过服务器的响应头去做的,没有仔细去了解cros,本文档只讲jsonp

     javascript可以去加载其他站点的js,那么在站点中定义个一个方法,并且传入一个参数,那么只要某一站点使用被定义的js方法,传递参数到该方法中那么就可以实现跨域了

 

 

    服务器接口   请求  xxx.com 接口返回  Hello({"user":"xxx"})

    那么某站点只要实现了Hello这个方法,那么在实现方法后通过javascript 去加载这xxx.com接口时就会执行这个接口的内容,自然Hello这个方法被调用,那么数据{"user":"xxx"}将会被传递到方法实现中,对参数进行处理

站点http://xxx.com    

request http://xxx.com         

response   Hello({"user":"xxx"})

 

站点http://jsonpxxx.com

......

<scripy>

function Hello(data){

                 拿到数据

}

<script>

<script src="http://xxx.com" ></script>        通过xxx站点的方法调用Hello方法

......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值