什么是跨域
一个域下的文档或脚本视图去请求另一个域下的资源,由浏览器同源策略限制的一类请求场景。
什么是同源策略
同源策略/SOP是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指 "协议 + 域名 + 端口" 三者相同。
jsonp跨域
通过动态创建script,再请求一个带参网址实现跨域通信。
<script type="text/javascript">
var script = document.createElement('script');
script.type = 'text/javascript';
//传参并指定回调函数为onBack
script.src = 'http://www.domain2.com:8080/login?user=admin&callback=onBack';
document.head.appendChild(script);
//回调函数执行
function onBack(res){
console.log(JSON.stringify(res));
}
</script>
谷歌浏览器关闭本地安全策略,实现同源策略,实现跨域
1、关闭所有浏览器页面;
2、右击谷歌浏览器图标,找到属性、快捷方式、目标;
3、在chrome.exe后面加上这段命令: --disable-web-security --user-data-dir,注意:exe和--disable之间加一个空格。
4、再次打开谷歌浏览器,出现: "你使用的是不受支持的命令行标记: --disable-web-security。稳定性和安全性会有所下降。",表示跨域成功,这时打开你的页面,就可以访问成功。