这时 abc.example.com 域下的页面和跨域文件 crossdomain.html 都在同一个域(example.com)下,我们可以在 abc.example.com 域下的页面中去调用 crossdomain.html 中的 newRequest 函数:
- var request = window.frames["xd_iframe"].newRequest();
这样获得的 request 对象,就可以向发送 HTTP 请求了。
(二)完全不同域的跨域技术。
如果顶级域名都不相同,例如 example1.com 和 example2.com 之间想通过 JavaScript 在前端通信,则所需要的技术更复杂些。
在讲解不同域的跨域技术之前,我们首先明确一点,下面要讲的技术也同样适用于前面跨不同子域的情况,因为跨不同子域只是跨域问题的一个特例。当然,在恰当的情况下使用恰当的技术,能够保证更优的效率和更高的稳定性。
简言之,根据不同的跨域需求,跨域技术可以归为下面几类:
1、JSONP 跨域 GET 请求
2、通过 iframe 实现跨域
3、flash 跨域 HTTP 请求
4、window.postMessage
本文先到这里,后续我们再详细介绍上面提到的 4 种跨域技术,稍后就奉上!
来源: