Vue跨域配置proxyTable問題

2021-10-25 19:17:28 字數 1225 閱讀 8488

最近在做乙個前後端分離的畢設,在前端向後端傳送get請求時遇到了vue跨域的問題。

been blocked by cors policy: no 『access-control-allow-origin』 header

is present on the requested resource

解決方案如下(以vue腳手架為例):

1、開啟config資料夾裡面的index.js檔案,找到proxytable引數。這個引數是vue為我們解決跨域問題專門設定的。

2、修改引數(以我的專案為例)。我原本要請求的url是後端的位址,http://localhost:8083/predict/api 但是我前端的位址是http://localhost:8080 於是產生了跨域問題。此時,只需要把proxytable設定成如下

target表示伺服器端的位址,changeorigin表示是否跨域。

『/predict』: {}, 就是告訴node, 我介面只要是』/predict』開頭的就用**.所以你的介面就要這麼寫

『^predict』 :

'predict'

表示將路徑中的predict換為predict,因為我請求路徑中原本就有predict所以我就不用修改,不用修改就是這麼寫。如果你的predict只是為了標識使用**,實際上不存在,那就把predict替換成空,如下。

『^predict』 :

''

注意predict只是我自己的路徑,不是本身就帶有的引數,你需要根據自己的路徑來重寫。

3、修改完之後,還有乙個坑,可能因為瀏覽器、埠存在快取,不會立即生效,這時候可以嘗試把前端的埠改一下再改回去,清除掉快取。還是index.js檔案,修改裡面的port引數的數值即可。

此時,在瀏覽器看到的url依舊是前端的url請求,但是實際上請求會被**至伺服器端

參考文章

vue配置解決跨域問題

我們在使用vue時,經常要遇到跨域的問題,其實這個問題很好解決,只需我們在vue cli中配置一下即可。實現跨越請求 在config資料夾下找到index.js proxytable 然後在main.js中我們還要進行配置一下 vue.prototype.host baidu music api 哦...

vue專案的跨域配置

使用vuecli webpack進行專案開發時,遇到了需要跨域訪問的情況,這裡簡單記錄一下前端的跨域配置,如下 1 配置本地 修改config資料夾下的index.js檔案中的dev下的proxytable屬性,如下 dev host localhost port 8080 autoopenbrow...

vue3配置跨域

在根目錄下建立vue.config.js module.exports 那怎麼請求呢?axios.get hello then res 請求的介面不要接上伺服器網域名稱,這樣就會自動請求vue腳手架伺服器 node伺服器 所以node伺服器就是作為 伺服器,從而處理了跨域問題以下localhost ...