前端常见跨域解决方案

2019-07-17  本文已影响0人  明里人
什么是跨域

一个域下的文档或脚本视图去请求另一个域下的资源,由浏览器同源策略限制的一类请求场景。

什么是同源策略

同源策略/SOP是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指 "协议 + 域名 + 端口" 三者相同。

image.png
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。稳定性和安全性会有所下降。",表示跨域成功,这时打开你的页面,就可以访问成功。

上一篇 下一篇

猜你喜欢

热点阅读