跨域问题
来源:互联网 发布:网络集成与设计 编辑:程序博客网 时间:2024/06/08 08:24
跨域问题
出于安全考虑,html的同源策略不允许JavaScript进行 跨域操作。
- 跨域通信一般分为两类
- 一类是hack,通过title, navigation等对象传递信息,jsonp就是其中最优秀的一个hack.
- 另一类就是html5的支持,一个是Access-Control-Allow-Origin响应头,一个是window.post Message。
- 设置document.domain
- 原理:相同主域名不同子域名下的页面,可以通过设置document.domain让他们同域
- 限制:同域document提供的是页面间的互操作,需要载入iframe
- document.domain只能从子域设置到主域,往下设置或往其他子域设置是不允许的。
- 有src标签。
- 原理:所有具有src属性的html标签都是可以跨域的包括《img》《script》
- 限制:需要创建一个DOM对象,且只能用于get方法。
- 在document.body中append一个具有src属性的HTML标签,src属性值指向的URL会以GET方法被访问,该访问时可以跨域的
- img在更改src属性是就会发起请求,而script,iframe,link等只有在添加到DOM树后才会发起http 请求
- jsonp
- 原理:
// URL: http://a.com/foovar win = window.open('http://b.com/bar');win.postMessage('Hello, bar!', 'http://b.com');
// URL: http://b.com/barwindow.addEventListener('message',function(event) { console.log(event.data);});
阅读全文
0 0
- Ajax请求缓存问题、中文乱码问题、跨域问题
- birt session 过期问题,跨域问题
- cookie跨域问题
- Cookie跨域问题
- JS跨域问题
- javascript跨域问题
- ajax跨域问题
- 跨域问题
- JS跨域问题
- JavaScript跨域问题
- weblogic跨域问题
- AJAX跨域问题
- js跨域问题
- javaScript跨域问题
- 跨域问题
- 跨域问题
- Flex跨域问题
- 跨域问题
- shell脚本流程控制
- httpd服务如何开机自启
- Linux 排错 误删 /etc/fstab 和 /boot怎样恢复
- Linux 启动流程
- java安装和环境变量
- 跨域问题
- 【CS 2460】树的统计(树链剖分)
- file结构体
- 浏览器的解析渲染过程
- 从地址栏输入网址时,敲下回车后,发生哪些了哪些事情?
- house of orange
- 把 Script 标签 放在页面的最底部的 body 封闭之前 和封闭之后有什么区别?浏览器会如何解析它们?
- 序列化二叉树
- Oracle 树操作(select…start with…connect by…prior)