最近做前端開發總是遇到一個很奇怪的現象,同一個AJAX請求,在Chrome里調試的時候就會提示跨域,但是在手機模擬器或者真機上調試的時候就不會,於是百度了一下,發現是Chrome的安全策略導致的,需要在后台設置一下
在網上找了半天,發現很多大家通用的方法在我這兒都不行,今天終於找到一個可行,在這里分享給大家
首先要說的是,我的版本是59的,也就是說是49以后的版本,所以49以后版本的朋友可以用我的這個方法,如果還是之前的老版本,網上其他的通用方法應該就是OK的

Google Chrome 版本號
首先給大家看看我的跨域報錯信息,可能每個人的報錯信息都不一樣,總之確實是AJAX請求跨域導致的

AJAX請求跨域
我們要做的第一步,就是創建一個文件夾,這個文件夾是用來保存關閉安全策略后的用戶信息的,名字可以隨意取,位置也可以隨意放

創建一個文件夾
然后打開控制台,輸入下面這段代碼
open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/LeoLee/Documents/MyChromeDevUserData

關閉安全策略代碼
大家需要根據自己存放剛剛創建的文件夾的地址來更改上面的代碼,也就是下面圖中的紅框區域,而網上大多數的教程中也正是缺少了這部分的代碼導致很多用戶在關閉安全策略時失敗

用戶需要根據自己的文件夾地址修改代碼
輸入代碼,敲下回車,接下來Chrome應該會彈出一個窗口

Chrome彈窗
點擊啟動Google Chrome,會發現與之前的Chrome相比,此時的Chrome多了上方的一段提示,告訴你現在使用的模式並不安全

瀏覽器上方會多出一行提示
接下來可以將之前需要調試的程序頁面復制粘貼到新打開的瀏覽器中,可以看到AJAX跨域的問題已經解決了,數據能夠獲取到了