文档章节

跨域通信

o
 osc_z1hvg4cu
发布于 2018/04/24 14:19
字数 283
阅读 7
收藏 0
xhr

精选30+云产品,助力企业轻松上云!>>>

1. 不考虑低版本浏览情况下,还是使用XMLHttpRequest对象,IE下使用XDomainRequest 

咱们一般都会用ajax 做前后台交互,也就是我们常用的XHRHttpRequest2对象,那么这个倒底是否支持跨域通信呢?

我们接下来看一下( IE5,6我们先忽略 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");  )

在标准浏览器下,XMLHttpRequest对象已经是升级版本,支持了更多的特性,可以跨域了
但是,如果想实现跨域请求,还需要后端的相关配合才可以,

后台需要设置头部允许跨域  header('Access-Control-Allow-Origin:http://www.a.com'); //这是允许访问该资源的域

 1 var xhr = new XMLHttpRequest();
 2         xhr.onreadystatechange = function() {
 3             if (xhr.readyState == 4) {
 4                 if (xhr.status == 200) {
 5                     alert(xhr.responseText);
 6                 }
 7             }
 8         }
 9         xhr.open('get', 'elseDomain_url', true);
10         xhr.send();

 

XMLHttpRequest : 增加很多功能,他也不推荐使用onreadystatechange这个事件来监听,推荐使用load ,error, 详见  https://www.w3.org/TR/2012/WD-XMLHttpRequest-20120117/#event-xhr-load

XDomainRequest : IE如果想实现跨域请求,IE下使用 XDomainRequest 对象,如下

1 var oXDomainRequest = new XDomainRequest();
2         oXDomainRequest.onload = function() {
3             alert(this.responseText);
4         }
5         oXDomainRequest.open('get', 'elseDomain_url', true);
6         oXDomainRequest.send();

 2. JSONP

3. Hash

4.PostMessage

5.WebSocket

6. CORS

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
窗口之间通信类

通信方式有很多种: ajax 不支持跨域通信(XMLHttpRequest2 其实标准的浏览器也是可支持跨域,只要后端设置一下头部也是可以跨域的,设置header(Access-Control-Allow-Origin: http://mywebd...

osc_z1hvg4cu
2018/04/24
2
0
前端处理跨域的几种方式

什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1、 其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景。 ...

osc_f15kijhe
2019/02/18
2
0
一文梳理同源策略与跨域技术

1.同源策略 同源策略是一个重要的安全策略,它用于限制一个origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档,减少可能被攻击的媒介。 1.1何谓同源? 如果...

osc_cp2m7hk3
昨天
6
0
前端解决跨域的九种方法

什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1、 其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景。 ...

osc_ma60u6gg
2018/02/28
2
0
window.postMessage

HTML5 跨域通信 API - window.postMessage 参考 MDN - Window.postMessage() Syntax otherWindow.postMessage(message, targetOrigin, [transfer]) message 你要发送的信息(字符串和对象都可......

SKYCOBS
2016/09/14
25
0

没有更多内容

加载失败,请刷新页面

加载更多

浅谈对python pandas中 inplace 参数的理解

这篇文章主要介绍了对python pandas中 inplace 参数的理解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 pandas 中 inplace 参数在很多函数中都会有,它的作用是:是否...

Linux就该这么学
4分钟前
0
0
C++ 从基本数据类型说起

前言 int 在32位和64位操作系统,都是四个字节长度。为了能编写一个在32位和64位操作系统都能稳定运行的程序,建议采用std::int32_t 或者std::int64_t指定数据类型。*与long随操作系统子长变...

osc_sxdofc9c
4分钟前
0
0
游戏音乐的作用以及起源

游戏音乐是由特殊的音乐、语言符号、美学符号组成,在电子游戏的发展下,游戏音乐越来越成熟,游戏音乐与美术相融合,能够带给玩家视觉与声音的感官冲击,形成游戏音乐所具有的独特的审美效果...

奇亿音乐
4分钟前
0
0
2020,最新Model的设计-APP重构之路

很多的app使用MVC设计模式来将“用户交互”与“数据和逻辑”分开,而model其中一个重要作用就是持久化。下文中设计的Model可能不是一个完美的,扩展性强的model范例,但在我需要重构的app中,...

osc_mfzkzkxi
5分钟前
0
0
面对职业瓶颈,iOS 开发人员应该如何突破?

我们经常看到 iOS 开发人员(各种能力水平都有)的一些问题,咨询有关专业和财务发展方面的建议。 这些问题有一个共同点:前面都会说“我现在遇到了职业困境”,然后会问一些诸如“我是否应该...

osc_gfpedeca
6分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部