ajax跨域请求的解决办法
2017-04-20 22:50
405 查看
什么是跨域请求
阻止ajax跨域请求是客户端出于安全考虑设的一道坎,只要是在不同域名下一个请求ajax另一个返回数据必然是不通的。解决ajax跨域请求的几种办法
写入允许跨域的header头
这是最简单高效的一种方式header头的写法是这样的:"Access-Control-Allow-Origin: http://a.com"//允许http://a.com跨域调取 "Access-Control-Allow-Origin: *"//允许所有域名跨域调取
通过中间服务器调取数据形成接口
大多数的服务端语言都会有一个方法叫做curl,这个方法的一般作用就是模拟客户端表单提交和从接口读取数据,如果存在跨域问题的话我们可以在本服务器编写一个curl来调取另一个域名下的数据接口,再写成接口或ajax来给本域名下使用,这种方法就是实现起来太麻烦写的代码量偏多是没有办法时候的办法一般不会用的。
再一种就是jsonp方法
这种方法其实是很久之前就存在的一种独辟蹊径的方法,它的产生基于我们web前端的这么几个特点,首先src所读取的资源不受跨域限制。
js可以直接用src读取。
js天生支持json,使用json通信没有障碍(当然并非只能用json通信)
服务器可以打包任意字符串,就可以打包成js执行方法的样子打包给src调取。
jsonp的实现demo
写在下一个博客吧。相关文章推荐
- Ajax跨域请求COOKIE无法带上的解决办法
- Ajax跨域请求COOKIE无法带上的完美解决办法
- 求ajax跨域请求js拒绝访问解决办法
- Ajax跨域请求COOKIE无法带上的解决办法
- ajax是否能跨域请求,解决的办法
- ajax是否能跨域请求,解决的办法
- AJAX 跨域请求的解决办法:使用 JSONP获取JSON数据
- AJAX 跨域请求的解决办法:使用 JSONP获取JSON数据
- ajax跨域请求的解决办法
- ajax请求中遇到的跨域问题的解决办法(jsonp)
- Ajax跨域请求COOKIE无法带上的解决办法
- 几个问题(十一)-------ajax是否能跨域请求,解决的办法
- ajax请求ashx跨域问题解决办法
- Ajax跨域请求COOKIE无法带上的解决办法
- ajax是否能跨域请求,解决的办法
- ajax技术,也是有局限的,不能跨域,即A工程的html页面发起一个ajax请求即http url请求调B工程的action(A和B不在一个域中的),怎么办?解决办法
- ajax是否能跨域请求,解决的办法
- 项目中遇到js跨域和ajax同步的解决办法
- 用iframe设置代理解决ajax跨域请求问题