vue中解決跨域問題

2021-08-08 14:18:12 字數 860 閱讀 6316

一般來說,我們會在正式環境中講介面配置到和專案路徑是乙個網域名稱下的。因此,我們沒必要在呼叫介面的時候使用絕對位址,使用相對位址即可。但是開發環境的話,我們本地跑的是localhost:8080位址,當然要使用包含網域名稱的介面位址了。

正式環境

介面位址 /api/**

前端頁面位址 /

開發環境

如上,在請求上,我們的開發環境不僅僅面臨要把介面的全路徑寫全的問題,還包括跨域問題等等。

所以,解決這個問題的方法就出來了,將介面位址通過**的方式對映到本地,讓我們的本地開發也可以使用相對根目錄的方式請求介面。

webpack本身自帶了**功能,我們的vue-cil更是整合了進來,只要經過簡單的配置即可。

我們開啟下面路徑的檔案

config/index.js
在其中的dev物件裡面找到:

proxytable: {},
這裡就是配置**的地方,我們進行如下設定:

proxytable: 

},

webpack**設定請參閱:

預設配置下,我們的專案只能在根目錄下執行,如果真這樣的話,那還是非常麻煩的,可能我們需要在乙個網域名稱下面跑多個專案。

通過下面的簡單設定,可以將我們打包的檔案放在任意地方跑起來。

同樣是config/index.js這個配置檔案,我們找到build節點,找到下面的**:

例如,你想放在/h5/下面,就應該這樣填寫assetspublicpath: '/h5/',

vue中解決跨域問題

1.在vue.config中配置proxy devserver cookiepathrewrite 2.傳送網路請求。以axios.get 為例,在需要傳送網路請求的檔案中匯入axios import axios from axios 也可以在main.js檔案中配置全域性的axios,這樣可以直接...

vue解決跨域問題

開發模式 要知道,跨域這個行為是瀏覽器禁止的,但是服務端並不禁止。使用proxytable的原理就是將網域名稱傳送給本地的伺服器,再由本地的伺服器去請求真正的伺服器。開啟config index.js,修改dev裡的proxytable proxytable 當你在別的頁面請求時只要是 你只需要 x...

Vue 解決跨域問題

報錯 解決 專案根目錄下新建vue.config.js module.exports 個人理解 訪問 register的時候,相當於是訪問本地的http localhost 8080 register 然後這個proxy,充當於乙個請求 的作用 它攔截了http localhost 8080 reg...