跨域请求之jsonp
作者:edwin
日期:2015-06-10 20:05:33
所属分类:前端 - javascript

实现原理

利用script标签可以跨域访问js文件

实现方法

如 http://a.com/a.html 需要请求 b.com/b.html

1. 在a.html中定义个回调函数,通过script标签引入b.html

<script>
    function jsonpCallback( data ) {
        console.log( data );
    }
</script>
<script src="http://b.com/b.html"></script>

2. b.html返回上面的回调的调用

jsonpCallback({ 
    name : 'hello',
});


备注

 在使用过程中,每次请求需生成一个随机回调,通过uri请求发送给服务端,由其返回。


缺点

1. 同一数据源的重复请求,效率很低, 因为每次请求,uri中都有随机回调函数名,所以不会缓存

2. 仅支持get

评论

全部评论 / 0