ajax的同源策略

问题

之前帮忙做的广告机器人数据提交的部分,利用ajax的XMLHTTPRequest提交到服务器的时候总是报错,错误类型是不同源。想到浏览器中的同源策略,明白了问题的原因。

同源策略

简单的说,就是浏览器不允许两个不同源的域名之间交换信息,那么这里就有两个问题。一是,什么信息不允许交换;二是,怎样算不同源。

阮一峰的这篇博客浏览器同源政策及其规避方法其实已经介绍得比较清楚。引用一下,第一个问题:

目前,如果非同源,共有三种行为受到限制。
(1) Cookie、LocalStorage 和 IndexDB 无法读取。
(2) DOM 无法获得。
(3) AJAX 请求不能发送。

第二个问题:

所谓"同源"指的是"三个相同":
协议相同
域名相同
端口相同

同源策略的目的就是为了浏览器的安全,防止恶意脚本的肆意破坏。但是值得注意的是,

你可能感兴趣的:(ajax的同源策略)