解決vue中使用proxy配置不同端口和ip接口問題
問題描述:
使用vue-cli創(chuàng)建的項(xiàng)目,開發(fā)地址是localhost:8080,由于后臺(tái)開發(fā)不同的模塊,導(dǎo)致每個(gè)模塊請(qǐng)求的ip和端口號(hào)不一致
例如:http://192.168.10.22:8081 或者 http://192.168.10.30:9999等
解決問題:
在vue.config.js中配置不同的端口號(hào)
module.exports = {
publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
devServer: {
open: true,
proxy: {
'/monitor': { // 配置的變量
target: 'http://192.168.10.30:9999', // 需要請(qǐng)求的第三方接口
changeOrigin: true, // 開啟代理:
在本地會(huì)創(chuàng)建一個(gè)虛擬服務(wù)器,然后發(fā)送請(qǐng)求,并同時(shí)接收請(qǐng)求,這樣服務(wù)端和服務(wù)端進(jìn)行交互就不會(huì)有跨域問題
pathRewrite: { // 這里重寫路徑,如果monitor本身不存在接口路徑中,一定要寫成空?。。?
'^/monitor': ''
},
ws: false
}
}
}
}
在調(diào)用該接口的時(shí)候,需要寫上'/monitor/'
export const getDictionary = ((params) => {
return _axios({
url: '/monitor/keypersonnel/getDictionaryForType',
method: 'post',
data: params
})
})
備注:proxy代理只在本地測(cè)試的開發(fā)環(huán)境有效,在部署到線上的時(shí)候應(yīng)該怎么區(qū)分呢
問題:
若項(xiàng)目中不同模塊請(qǐng)求不同ip和端口的接口,應(yīng)該怎么設(shè)為可配置的呢,后端可以修改的,避免由于接口問題導(dǎo)致的不斷的打包上線
思路一:在public目錄下放置json文件,配置的時(shí)候,去讀取json文件
<template>
<div class="er">
<el-scrollbar style="height:100%">
<div class="ds">
<img
class="sdde"
:src='`${publicPath}imges/but_play.png`'
>
</div>
</el-scrollbar>
</div>
</template>
<script>
export default {
data() {
return {
publicPath: process.env.BASE_URL
}
},
components: {
}
}
</script>
結(jié)果: 失敗!給圖片的src賦值成功,但是在create中按照同樣的方法去require這個(gè)json文件,還是報(bào)路徑錯(cuò)誤
思路二: 在public中新建js文件,在js文件中,將地址掛載到window上,并在index的html文件中引入
// 配置線上的請(qǐng)求地址
window.serverUrl = {
publicSentiment: 'http://192.168.10.22:8081', // 輿情分析
monitor: 'http://192.168.70.6:9999' // 重點(diǎn)人員監(jiān)控
}
總結(jié)
以上所述是小編給大家介紹的解決vue中使用proxy配置不同端口和ip接口問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
vue頭部導(dǎo)航動(dòng)態(tài)點(diǎn)擊處理方法
這篇文章主要介紹了vue頭部導(dǎo)航動(dòng)態(tài)點(diǎn)擊處理方法,文中通過一段示例代碼給大家介紹了vue實(shí)現(xiàn)動(dòng)態(tài)頭部的方法,需要的朋友可以參考下2018-11-11
用vue 實(shí)現(xiàn)手機(jī)觸屏滑動(dòng)功能
這篇文章主要介紹了用vue 實(shí)現(xiàn)手機(jī)觸屏滑動(dòng)的功能,文中通過示例代碼給大家介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05
vue-cli3 取消eslint校驗(yàn)代碼的解決辦法
這篇文章主要介紹了vue-cli3 取消eslint校驗(yàn)代碼的解決辦法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01
vue?button的@click方法無效鉤子函數(shù)沒有執(zhí)行問題
這篇文章主要介紹了vue?button的@click方法無效鉤子函數(shù)沒有執(zhí)行問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
Vue組件中的data必須是一個(gè)function的原因淺析
這篇文章主要介紹了Vue組件中的data必須是一個(gè)function的原因淺析,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-09-09
vue循環(huán)數(shù)據(jù)v-for / v-if最后一條問題
這篇文章主要介紹了vue循環(huán)數(shù)據(jù)v-for / v-if最后一條問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
vue-router判斷頁面未登錄自動(dòng)跳轉(zhuǎn)到登錄頁的方法示例
這篇文章主要介紹了vue-router判斷頁面未登錄自動(dòng)跳轉(zhuǎn)到登錄頁的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11
如何構(gòu)建 vue-ssr 項(xiàng)目的方法步驟
這篇文章主要介紹了如何構(gòu)建 vue-ssr 項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08

