实现跨域请求的方式
虽然 Ajax 请求需要满足同源策略,然而在一些场景中,你真的需要 Ajax 访问其它 "源" 的数据(称为跨域访问),这时需要后端服务器进行相应的设置。
如果服务器端支持 CORS,可以通过设置Access-Control-Allow-Origin
来实现跨域。如果浏览器检测到相应的设置,就会允许 Ajax 进行跨域访问。
扩展:解决跨域问题的其它方式
- JSONP 技术;
- 在服务端设置代理模块;
- 通过修改 window.name 实现跨域;
- 使用 HTML5 中新引进的 window.postMessage 方法来跨域传送数据;
- 等...
// 三元表达式,其中问号前面的是条件,当条件是正确的就执行冒号前面的语句,否则执行冒号后面的语句 var xhr = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");