關於vue中的跨域問題
阿新 • • 發佈:2018-12-31
我們在使用vue框架的時候,難免遇到跨域的問題。當然解決跨域問題的方法有很多,那我就說說在我遇到跨域問題的時候是如何解決的吧。
在我請求一個後臺介面的時候,瀏覽器報錯,報錯的資訊就是告訴我跨域了,沒法弄了。然而這時候又不能讓後臺修改程式碼,只好在前端設定相應的程式碼了。OK,不廢話了,直接說如何解決問題吧。
就是在config下的index.js中配置相關程式碼。具體程式碼見下圖
其中,target是介面域名,即http://xxxx.com的形式;changeOrigin為true,設定是否跨域;pathRewrite設定重寫的路徑。
- 假設你主機名為 localhost:8080 , 請求 API 的 url
- '/apis':如果點選某個按鈕,觸發請求 API 事件,這時請求 url 是
http://localhost:8080/apis/user/list
。 - changeOrigin:如果 true ,那麼
http://localhost:8080/apis/user/list 變為 http://your_api_server.com/apis/user/list
。但還不是我們要的 url 。 - pathRewrite:重寫路徑。匹配 /proxy ,然後變為
''
,那麼 url 最終為http://your_api_server.com/user/list
。
config配置好之後,接下來就是你要請求的介面的位置怎麼寫了
只需要把你要請求的域名地址改為剛剛設定的重寫的路徑就好了,後面該拼接引數就拼接引數。
需要改動的程式碼就這些了,是不是很簡潔呢?
最後,不要忘了改動配置檔案後需要重啟服務,這樣才會有效哦!