chrome disable-web-security 關閉安全策略 解決跨域


Chrome 跨域訪問線上接口

時間:2016-04-21 
作者:zhongxia

前后端分離之后,聯調的時候就會出現問題,那就是Ajax跨域問題。 跨域問題的解決方案有很多種
比如常規的 后端使用CROS,設置允許訪問接口的地址 或者 使用 JSONP等等。
這里就不說前端常規的跨域解決方案,而是提供一個奇葩的方案,簡單到哭😢。


 

更新 2016年9月30日 11:01:24

經測試,發現 chrome53 使用在 chrome快捷方式 的屬性里面 添加 --disable-web-security --user-data-dir  不起作用。需要使用在命令行下打開

一、命令行打開方式

"C:\Users\UserName\AppData\Local\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir

//不知道chrome.exe 地址的話
右鍵chrome圖標-->屬性-->如下圖-->圖中 目標 就是文件的位置了,直接復制出來即可

 

更新 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 

     

  3. 打開chrome瀏覽器之后效果如下

     

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  

 

 

您可能還感興趣

1. 【GITHUB】前端技術文章匯總


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM