多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## Chrome 跨域访问线上接口 >CreateTime:2016-04-21 >UpdateTime:2016-09-01 14:52:17 >Author:zhongxia >前后端分离之后,联调的时候就会出现问题,那就是Ajax跨域问题。 跨域问题的解决方案有很多种 >比如常规的 **后端使用CROS,设置允许访问接口的地址** 或者 **使用 JSONP**等等。 这里就不说前端常规的跨域解决方案,而是提供一个奇葩的方案,简单到哭?。 ## 更新 2016-04-21 10:57:10 通过命令行启动chrome: ~~~ open -a "Google Chrome" --args --disable-web-security --user-data-dir ~~~ 出现如下提示则说明成功,然后就随意的调用不同域下的数据了。 chrome 48 命令行启动不支持设置跨域了,想要跨域,还需要需要在加上 `—user-data-dir` ## 前后端跨域解决方案 >可以通过使用chrome命令行启动参数来改变chrome浏览器的设置,具体的启动参数说明参考这篇介绍。 https://code.google.com/p/xiaody/wiki/ChromiumCommandLineSwitches >这里介绍的是--disable-web-security参数。这个参数可以降低chrome浏览器的安全性,禁用同源策略,利于开发人员本地调试。 这里提供一个更简单的跨域解决方案, 设置Chrome浏览器的 ***disable-web-security***, 实现跨域访问后端的接口。 ### **window** 1. 新建一个 chrome.exe 的快捷方式, ***并且关闭所有的chrome浏览器*** 2. 设置参数,关闭 `--args --disable-web-security` ![](https://box.kancloud.cn/df29ff54292dd9525b0aaecfb935d9ea_466x480.png) 3. 打开chrome浏览器之后效果如下 ![](https://box.kancloud.cn/69c45e948d5d43030a6b5843c694e58f_676x179.png) ### **mac** ~~~ //chrome 浏览器 open -a "Google Chrome" --args --disable-web-security --user-data-dir //safari 浏览器 open -a '/Applications/Safari.app' --args --disable-web-security --user-data-dir ~~~ ### **linux** ~~~ chromium-browser --disable-web-security ~~~