多语言展示
当前在线:1787今日阅读:103今日分享:49

前端如何解决跨域问题

我比较了解的是Jsonp的跨域请求,下面简单介绍一下。
工具/原料

jQuery+jsonp

方法/步骤
1

对于经常用jQuery的开发者来说,能注意到jQuery封装的$.ajax中有一个dataType属性,如果将该属性设置成dataType:'jsonp',就能实现JSONP跨域了。

2

$.ajax({                    type: 'post',         //指定发送类型                    url: url,                 //指定ip地址或者其他请求路径                    dataType: 'jsonp', //返回的数据类型,设置为JSONP方式                    data: param,         //可以是发送参数或者其他数据                    jsonp: 'callback',  //设置回调函数名,传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)                    async:false,           //是否异步请求                    success: function(jsonData) {                     //发送请求数据,返回数据,进行处理                                                 } })

3

最简单的方式,只需配置一个dataType:'jsonp',就可以发起一个跨域请求。jsonp指定服务器返回的数据类型为jsonp格式,可以看发起的请求路径,自动带了一个callback=xxx,xxx是jquery随机生成的一个回调函数名称。

注意事项
1

主要接受的jQuery+jsonp 的跨域请求

2

如果觉得这篇经验对你有用的话,可以对该经验进行投票或者点评!

推荐信息