Vue3.0?axios跨域請求代理服務(wù)器配置方式
axios跨域請求代理服務(wù)器配置
首先安裝axios
npm install axios
然后在vue.config.js文件下配置如下代碼
(若沒有vue.config.js文件可以自己創(chuàng)建這個文件)
module.exports = {
devServer: {
open: true,
port: 8001,
proxy: {
'/apis': {
target: 'http://localhost:8080/thinkphp/personal_blog/public/personal.php/personal/', // target host
ws: true, // proxy websockets
changeOrigin: true, // needed for virtual hosted sites
pathRewrite: {
'^/apis': '' // rewrite path
}
},
}
}
};其中open表示是否運行時就啟動app,port表示我們當前vue頁面的端口比如下面我的頁面端口是8001那么這里就寫8001

然后proxy中的代碼就是跨域代理服務(wù)器的配置代碼
其中target就是目標api接口,比如你們接口為 http://localhost:8080/api/login 那么target就可以寫http://localhost:8080/api/
然后在項目中實際用我們就可以這么寫
axios.post('/apis/login', postData)
.then(response => {
// post 成功,response.data 為返回的數(shù)據(jù)
console.log(response.data)
})
.catch(error => {
// 請求失敗
console.log(error)
})那個apis就是http://localhost:8080/api/ 也就是我們在target中配置的api接口,"/apis/"就是 pathRewrite中配置的

然后就可以請求成功了,我這里的后臺是以tp5框架做為后臺
這里我使用的是vuecli3.0最新版的腳手架
目錄結(jié)構(gòu)如下

其中初始創(chuàng)建時沒有vue.config.js的文件,這個為自己手動創(chuàng)建
注意 修改成功后一定要重新啟動項目
axios跨域問題解決
1.在vue.config.js文件中做如下配置

target: 配置跨域請求的地址changeOrigin: 是否跨域pathRewrite: 路徑重寫
2.request.js(攔截器頁面)如下配置

**這里的baseURL要修改成與vue.config.js文件中設(shè)置代理名稱(/api)相同的名字
3.具體請求頁面如下配置
(不需要做特殊配置)**

url: 具體請求接口
我是根據(jù)自己的項目配置的,大家可以自己對照一下,僅為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue+vant-UI框架實現(xiàn)購物車的復(fù)選框全選和反選功能
這篇文章主要介紹了vue+vant-UI框架實現(xiàn)購物車的復(fù)選框全選和反選功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-11-11
關(guān)于Element-ui中el-table出現(xiàn)的表格錯位問題解決
使用ElementUI的el-table后,偶然發(fā)現(xiàn)出現(xiàn)行列錯位、對不齊問題,下面這篇文章主要給大家介紹了關(guān)于Element-ui中el-table出現(xiàn)的表格錯位問題解決的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-07-07

