Vue——请求转发配置解决方案
生活随笔
收集整理的這篇文章主要介紹了
Vue——请求转发配置解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題描述
當使用Vue和Spring Boot開發前后端分離項目時,由于前端項目和后端項目在不同的端口下啟動,前端的網絡請求無法直接發送到后端。
問題分析
對前端服務器配置請求轉發。
注:修改了配置文件(包括 config目錄下的index.js文件?或者 vue.config.js)之后必須重啟,否則不會生效。
解決方案
Vue 2
修改config目錄下的index.js文件,修改proxyTable,代碼如下:
proxyTable:{'/':{target:'http://localhost:8082', #這個就是后端的地址。changeOrigin:true,pathRewrite:{'^/':''}},'/ws/*':{target:'ws://127.0.0.1:8082',ws:true}},將所有的/開頭的請求轉發到8082的端口的地址上去。
Vue 3
在使用vue-cli3創建項目后,因為webpack的配置均被隱藏了,當你需要覆蓋原有的配置時,則需要在項目的根目錄下,新建vue.config.js文件,來配置新的配置。?
module.exports = {/* 部署生產環境和開發環境下的URL:可對當前環境進行區分,baseUrl 從 Vue CLI 3.3 起已棄用,要使用publicPath */ /* baseUrl: process.env.NODE_ENV === 'production' ? './' : '/' */publicPath: process.env.NODE_ENV === 'production' ? '/public/' : './',/* 輸出文件目錄:在npm run build時,生成文件的目錄名稱 */outputDir: 'dist',/* 放置生成的靜態資源 (js、css、img、fonts) 的 (相對于 outputDir 的) 目錄 */assetsDir: "assets",/* 是否在構建生產包時生成 sourceMap 文件,false將提高構建速度 */productionSourceMap: false,/* 默認情況下,生成的靜態資源在它們的文件名中包含了 hash 以便更好的控制緩存,你可以通過將這個選項設為 false 來關閉文件名哈希。(false的時候就是讓原來的文件名不改變) */filenameHashing: false,/* 代碼保存時進行eslint檢測 */lintOnSave: true,/* webpack-dev-server 相關配置 */devServer: {/* 自動打開瀏覽器 */open: true,/* 設置為0.0.0.0則所有的地址均能訪問 */host: '0.0.0.0',port: 8066,https: false,hotOnly: false,/* 使用代理 */proxy: {'/api': {/* 目標代理服務器地址 */target: 'http://47.100.47.3/',/* 允許跨域 */changeOrigin: true,},},}, }參考文章
https://blog.csdn.net/chenglinben/article/details/89892520
https://www.dazhuanlan.com/2019/12/14/5df3cfe24cbc5/
https://www.jianshu.com/p/13ebaad99fe6
https://segmentfault.com/a/1190000019319980?utm_source=tag-newest
總結
以上是生活随笔為你收集整理的Vue——请求转发配置解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vue + Bootstrap|Elem
- 下一篇: Vue + Element UI——侧边