js CORS
来源:互联网 发布:javascript生成随机数 编辑:程序博客网 时间:2024/04/30 10:29
概念:只要协议、域名、端口有任何一个不同,都被当作是不同的域
服务器端对于CORS
的支持,主要就是通过设置Access-Control-Allow-Origin
来进行的。如果浏览器检测到相应的设置,就可以允许Ajax进行跨域的访问。
1. 通过jsonp跨域
在js中,我们直接用XMLHttpRequest
请求不同域上的数据时,是不可以的。但是,在页面上引入不同域上的js脚本文件却是可以的,jsonp正是利用这个特性来实现的。JSONP的优点是:它不像
XMLHttpRequest
对象实现的Ajax请求那样受到同源策略的限制;它的兼容性更好,在更加古老的浏览器中都可以运行,不需要XMLHttpRequest或ActiveX的支持;并且在请求完毕后可以通过调用callback的方式回传结果。JSONP的缺点则是:它只支持GET请求而不支持POST等其它类型的HTTP请求;它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行
JavaScript
调用的问题。2. CORS
1、 JSONP只能实现GET请求,而CORS支持所有类型的HTTP请求。2、 使用CORS,开发者可以使用普通的XMLHttpRequest发起请求和获得数据,比起JSONP有更好的错误处理。
3、 JSONP主要被老的浏览器支持,它们往往不支持CORS,而绝大多数现代浏览器都已经支持了CORS)。
3. 通过修改document.domain来跨子域
document.domain的设置是有限制的,我们只能把document.domain设置成自身或更高一级的父域,且主域必须相同。修改document.domain的方法只适用于不同子域的框架间的交互
4.使用window.name来进行跨域
window对象有个name属性,该属性有个特征:即在一个窗口(window)的生命周期内,窗口载入的所有的页面都是共享一个window.name的,每个页面对window.name都有读写的权限,window.name是持久存在一个窗口载入过的所有页面中的5. 使用HTML5的window.postMessage方法跨域
0 0
- js CORS
- Nginx CORS实现JS跨域
- Nginx CORS实现JS跨域
- Nginx CORS实现JS跨域
- CORS
- CORS
- CORS
- CORS
- CORS
- CORS
- Node.js实现CORS跨域资源共享
- JS Cors Tomcat配置(简单,可用)
- node.js backbone.js jquery 跨域访问 利用CORS
- JS 跨域资源共享 -- Ajax CORS / img ping / jsonp
- 如何用CORS来解决JS中跨域的问题
- 利用cors,实现js跨域访问Tomcat下资源
- AJAX与跨域请求CORS(JS)
- js跨域总结(jsonp,postMessage,CORS)
- iOS使用HHealthKit读取修改健康步数
- 守护进程
- jenkins+svn+android studio自动化构建(持续集成)
- Git-GitHub搭建远程仓库
- 牛客网 8.2 网易2017校招 Java 第一题 下厨房
- js CORS
- springmvc整合mybatis框架源码
- 【Akka】Akka入门编程实例
- 9i 数据库Monitoring(转载)
- U盾的原理
- 数据结构 分别用递归和非递归方法实现二叉树先序,中序,后序遍历
- java导出可执行文件
- OJ系列之---IP与整数之间的转换
- POJ2109——Power of Cryptography