在说跨域之前,先说说同源策略,什么是同源策略呢?同源策略是浏览器的一种安全机制,减少跨站点脚本攻击(XSS,Cross Site Scripting)、跨站点请求伪造(CSRF,Cross Site Request Forgery)攻击等,因为非同源的请求会被浏览器拦截掉。
同源就是协议、域名(主域名和子域名)、端口三者均相同,有其中一个不同就是非同源,即跨域。遵循同源策略情况如下:
遵循同源策略 | 1. Web存储:Cookie、SesstionStorage、LocalStorage、IndexedDB 2. DOM节点和JS对象 3. Ajax请求发送不出去 |
不遵循同源策略 | 1. <img src='url' /> 2. <link href='url' /> 3. <script src='url' /> 基于script实现的JSONP跨域方案 |
注&