vue部署包可配置后臺接口地址的方法
有時候一個部署包可能要應(yīng)用于不同服務(wù)器,這就需要頻繁更換后臺地址。
由此引申出了部署包可直接配置后臺地址的需求,這樣就不需要頻繁打包了。
方法
1. public 新增 config.js 文件(會被惡意修改地址,不安全)
public 文件夾下的文件是不會被打包
// public/config.js
window.CUSTOM_CONFIG = {
BASE_URL: 'http://localhost:9001', // 后臺接口地址
}
同個文件夾下的index.html文件的head標(biāo)簽內(nèi)引入config.js
<script src="<%= BASE_URL %>config.js" type='text/javascript'></script>
然后在需要的地方引入,如 axios 封裝的request.js文件:
const config = {
baseURL: window.CUSTOM_CONFIG.BASE_URL, // 引入 config.js 的配置
timeout: 550000,
}
service = axios.create(config);2. public 新增一個 json 文件存放地址
// config.json
{
"BASE_URL": "http://localhost:9001"
}
然后在 axios 封裝的request.js文件下通過XMLHttpRequest獲取
(網(wǎng)上有一些是直接用axios獲取,但是我這里要同步操作,不然還沒返回數(shù)據(jù)代碼已經(jīng)執(zhí)行到下面去了,只能用XMLHttpRequest來獲取)
// request.js
let xmlhttp = new XMLHttpRequest();
xmlhttp.open('get', './config.json', false);
xmlhttp.send(null);
let BASE_URL = JSON.parse(xmlhttp.responseText).BASE_URL;
let service = {};
const config = {
baseURL: BASE_URL,
timeout: 550000,
}
service = axios.create(config);但是這樣瀏覽器會出現(xiàn)提示,搜了一下說這個不會有什么影響?(強(qiáng)迫癥可能會看著不爽)

出現(xiàn)的問題
神奇的是根據(jù)上一篇文章“vue項目部署到IIS”部署到另一臺服務(wù)器的時候,居然失敗了!顯示“跨域”。搜了好久發(fā)現(xiàn)好多文章都是一樣的設(shè)置,后面讓后臺加了跨域的設(shè)置才成功了!

然后另一個問題出現(xiàn)了?。?!
用ip地址訪問的時候,后臺接口地址還是顯示localhost,不會自動切換到ip訪問地址。
解決方案: 如果 ip 地址訪問的時候,要將config.json里面的后臺接口地址改成 ip 訪問的地址才可以(這樣不管是localhost還是ip地址都可以訪問到)
個人猜測: 出現(xiàn)這樣的原因是從json文件里獲取的是字符串,地址相當(dāng)于寫死了,不會自動匹配成相應(yīng)的IP地址(個人見解,歡迎指正?。?/p>

到此這篇關(guān)于vue部署包可配置后臺接口地址的文章就介紹到這了,更多相關(guān)vue配置后臺接口地址內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue3中reactive變量重新賦值無法響應(yīng)的3種處理方法
這篇文章主要給大家介紹了關(guān)于Vue3中reactive變量重新賦值無法響應(yīng)的3種處理方法,在Vue3中可以使用reactive函數(shù)將一個普通對象轉(zhuǎn)換為響應(yīng)式對象,需要的朋友可以參考下2023-08-08
vue3使用vue-cli引入windicss報錯Can‘t resolve windi.css問題
這篇文章主要介紹了vue3使用vue-cli引入windicss報錯Can‘t resolve windi.css問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03
postcss-pxtorem設(shè)置不轉(zhuǎn)換UI框架的CSS單位問題
這篇文章主要介紹了postcss-pxtorem設(shè)置不轉(zhuǎn)換UI框架的CSS單位問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07
Vue3+NodeJS+Soket.io實現(xiàn)實時聊天的示例代碼
本文主要介紹了Vue3+NodeJS+Soket.io實現(xiàn)實時聊天的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01
Vuex中mutations與actions的區(qū)別詳解
下面小編就為大家分享一篇Vuex中mutations與actions的區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03
Vue實現(xiàn)讓頁面加載時請求后臺接口數(shù)據(jù)
這篇文章主要介紹了Vue實現(xiàn)讓頁面加載時請求后臺接口數(shù)據(jù)2022-08-08
vue3+ElementPlus+VueCropper實現(xiàn)上傳圖片功能
文章介紹了如何在Vue3、ElementPlus和VueCropper組件中實現(xiàn)圖片上傳和裁剪功能,包括放大、縮小等操作,感興趣的朋友跟隨小編一起看看吧2025-01-01

