HTML5窗口间同域和跨域的通信】的更多相关文章

HTML5:使用postMessage实现Ajax跨域请求 由于同源策略的限制,Javascript存在跨域通信的问题,典型的跨域问题有iframe与父级的通信等. 常规的几种解决方法: (1) document.domain+iframe: (2) 动态创建script: (3) iframe+location.hash: (4) flash. 这里不细说这几种方法,记录的是HTML5的window.postMessage.postMessage兼容IE8+.Firefox.Opera.Saf…
一丶同域下的 1.如果我们要操作iframe里面的元素,首先获取到引入的页面的window.获取iframe里面的window对象. var oIframe=getElementsByTagName('iframe')[0].contentWindow;    然后就可以对iframe里面的DOM元素进行操作了. 2.window.open()方法 window.open()方法会返回一个被打开页面的window对象. var newWindow=window.open('xx.html','_…
关于跨域訪问.使用JSONP的方法.我前面已经demo过了.详细见http://supercharles888.blog.51cto.com/609344/856886,HTML5提供了一个很强大的API.叫postMessage.它事实上就是曾经iframe的进化版本号,使用起来极其方便,这里举个实验样例: 我们依然依照与上文同样的设定.假定我们有2个Domain Domain1: http://localhost:8080  它上面有个应用叫HTMLDomain1,而且有个页面叫sender…
ajax: 通过给Response Header添加Access-Control-Allow-Origin:*  来解决跨域请求,*代表允许所有的跨域请求,或者把*换成指定的域名 cookie: 服务端需要在Response Header中加入头 Access-Control-Allow-Credentials:true 然后客户端的ajax的withCredentials属性设置为True.  jquery中设置如下: $.ajax({ url:"B.abc.com", xhrFie…
一.什么是跨域?? js跨域请求就是使用js访问iframe里的不同域名下的页面内容,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同的域的iframe框架中的数据.即只要域名.协议.       端口有任何一个不同都被当作是不同的域.由于处于安全考虑,浏览器禁止js跨域访问,想要实现跨域需要那个域名下的网页给予你的支持才行. 实例说明下: url 结果 原因 http://shan.person.com/province/city/taishan.html 成功   http:…
一.文档间的通信 postMessage对象 //不跨域 1.iframe:obj.contentWindow [iframe中的window对象] iframe拿到父级页面的window: parent(上一层window) top(最顶层window) 2.window.open() 返回值是新窗口的window对象 拿到父级window : window.opener //跨域 3. 目标域的window.postMessage("xxx","目标域"); 目…
SSO 单点登录:一次登录,处处登录. 只需在一个登录认证服务下进行登录后,就可访问所有相互信任的应用 同域 SSO 1. session-cookie机制:服务端通过cookie认证客户端. 用户第一次登录后,服务端将返回一个cookie给客户端(这个cookie包含session id),用户下一次发起请求将在header带上这个cookie,服务端将能识别是哪一个客户端. /** * 完全同域 * cookie 是端口无关的 */Cookie cookie = new Cookie("ss…
抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的...简单说说思路,如有不正确的地方,还望指正^_^ 一.Ajax核心,创建XHR对象 Ajax技术的核心是XMLHttpRequest对象(简称XHR),IE5是第一款引入XHR对象的浏览器,而IE5中的XHR对象是通过MSXML库中的一个ActiveX对象实现的,因此在IE中可能有3个版本,即MSXML2.XMLHttp.…
Cookie 同域单点登录 最近在做一个单点登录的系统整合项目,之前我们使用控件实现单点登录(以后可以介绍一下).但现在为了满足客户需求,在不使用控件情况下实现单点登录,先来介绍一下单点登录. 单点登录:多个不同系统整合到统一加载个平台,用户在任何一个系统登录后,可以访问这个统一加载上的所有系统.登录之后,用户的权限和信息不再受某个系统的限制,即使某个系统出现故障(包括统一加载平台),其他系统还是能正常使用的.这就需要用户权限等信息保存到客户端,不受服务器的限制. 在cookie相关文档信息中,…
1 错误场景 今天要把项目部署到外网的时候,出现了这样的问题, 我把两个项目放到自己本机的tomcat下, 进行代码调试, 运行 都没有问题的, 一旦把我需要调用接口的项目B放到其他的服务器上, 就会报错, 无法通过Ajax调用springMVC的接口, 这是什么原因呢? 当我使用json ajax post请求传递数据的时候在web端出错:XMLHttpRequest cannot loadhttp://ip:8082/security/auth/outside.do. Origin http…