Vue使用Proxy代理后仍無(wú)法生效的解決
vue.js 配置了前端代理卻未能生效
記錄一下最近踩得小坑:
配置完代理后請(qǐng)一定重新執(zhí)行(重要,非常重要!)
npm run dev
若重新執(zhí)行命令后,代理仍為生效,請(qǐng)按下方步驟進(jìn)行檢查:
檢查index.js文件中的代理是否配置正確,示例如下:
proxyTable: { ’/api’: { //代理標(biāo)識(shí) target: ’http://xxx.xxx.xxx’,//指向的實(shí)際地址 changeOrigin: true, // 允許跨域 pathRewrite: { // 標(biāo)識(shí)替換 // 原請(qǐng)求地址為 /api/getData 將’/api’替換’’時(shí), // 代理后的請(qǐng)求地址為: http://xxx.xxx.xxx/getData // 若替換為’/other’,則代理后的請(qǐng)求地址為 http://xxx.xxx.xxx/other/getData ’^/api’: ’’ } } },
檢查請(qǐng)求路徑是否正確,以上方所配置的代理為例
// 請(qǐng)確認(rèn)原請(qǐng)求中是否包含代理標(biāo)識(shí)符 // 請(qǐng)確認(rèn)接口 http://xxx.xxx.xxx/getData直接訪問(wèn)是否正常 this.$axios.get(’/api/getData’).then((r)=>{ console.log(r) })
補(bǔ)充知識(shí):vue使用proxyTable設(shè)置接口代理
1、修改config/index.js里proxyTable
proxyTable: { ’/api’: { target: ’http://192.168.42.182:8080’, changeOrigin: true, pathRewrite: { ’^/api’: ’/’ } },}
2、修改config/dev.env.js
module.exports = merge(prodEnv, { NODE_ENV: ’'development'’, API: ’'/api'’ // 加入這一句})
3、設(shè)置axios的baseUrl
export default { get (url, params) { return axios({ method: ’get’, baseURL: process.env.API, // 修改這里 url, params, timeout: 100000 }).then((response) => { return checkStatus(response) }).then((res) => { return checkCode(res) }) }}
4、重啟服務(wù)器 npm run dev就好啦~
以上這篇Vue使用Proxy代理后仍無(wú)法生效的解決就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. PHP設(shè)計(jì)模式中工廠模式深入詳解2. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析3. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法4. 解決AJAX返回狀態(tài)200沒(méi)有調(diào)用success的問(wèn)題5. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過(guò)程(親測(cè)可用)6. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說(shuō)明7. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法8. CSS hack用法案例詳解9. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)10. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向
