最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue3配置代理后頁面500/404問題

 更新時間:2025年04月03日 10:07:12   作者:Suciy  
這篇文章主要介紹了Vue3配置代理后頁面500/404問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

問題

項目基礎配置:Vite+Vue-Router 4.0+Vue3

項目進入聯(lián)調(diào)階段,開始配置接口代理。由于項目需要單點登錄,于是就給項目增加了一個域名,也就是vue-router中的base字段。

const router = VueRouter.createRouter({
  history: VueRouter.createWebHashHistory('/my-app'),
  routes: []
})

這個配置需要配合Vite.config.ts的base字段一起修改:

export default ({ mode }) => {
  return defineConfig({
     base: '/my-app'
  })
}

但是配置完后前端頁面一直處于404的狀態(tài),網(wǎng)絡請求顯示500,我以為是路由的問題各種排查,甚至把官網(wǎng)Vue-Router的實例down下來,發(fā)現(xiàn)人家都是可以的。

最后一個一個配置排查發(fā)現(xiàn),proxy的代理的接口前綴和base重名了,修改代理名稱就可以

export default ({ mode }) => {
  return defineConfig({
     base: '/my-app',
     server: {
     open: true,
     port: 3000,
     host: '0.0.0.0',
     proxy: {
        '/my-app': {
          target: '...',
          changeOrigin: true,
          ws: true
        }
      }
    }
  })
}

最后解決方法:調(diào)用接口的地方增加一個自定義前綴,在vite.config中proxy配置中,增加一個rewrite即可。

axios.get('/test/my-app/interface1')
 export default ({ mode }) => {
  return defineConfig({
     base: '/my-app',
     server: {
     open: true,
     port: 3000,
     host: '0.0.0.0',
     proxy: {
        '/test': {
          target: '...',
          changeOrigin: true,
          ws: true,
          rewrite: (path) => path.replace(/^\/test/, '')
        }
      }
    }
  })
}

溯源

問題是解決了,但是為什么會出現(xiàn)這個問題呢?

  • base:base 是 Vite 配置中的一個選項,用于指定項目的基本公共路徑。它決定了在構建和開發(fā)過程中加載靜態(tài)資源的路徑。如果你的項目部署在子路徑下(例如 https://example.com/my-app/),你可以將 base 設置為 /my-app/,這樣 Vite 就會正確地加載靜態(tài)資源。
  • proxy:proxy 是 Vite 配置中的一個選項,用于配置開發(fā)服務器的代理轉(zhuǎn)發(fā)。通過 proxy,你可以在開發(fā)過程中將特定的 HTTP 請求代理到不同的目標地址。這對于解決前端開發(fā)過程中的跨域問題非常有用。

它們看起來獨立的配置選項,分別用于不同的功能:

  • base是用于指定項目的基本公共路徑,影響靜態(tài)資源的加載路徑。
  • proxy是用于配置開發(fā)服務器的代理轉(zhuǎn)發(fā),解決跨域問題。

但是注意base的作用是影響靜態(tài)資源的加載路徑,那么靜態(tài)文件資源是怎么加載呢?

在vite的源碼中(https://github.com/vitejs/vite/blob/main/packages/vite/src/client/overlay.ts),我們可以看見這樣一句代碼:

可以看見,vite是將base拼接的地址通過fetch加載文件,fetch是一個異步請求,如果此時base與代理地址重名,那么靜態(tài)資源將會被代理到服務器,所以會出現(xiàn)文件找不到的問題。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 如何通過URL來實現(xiàn)在Vue中存儲業(yè)務狀態(tài)實用技巧

    如何通過URL來實現(xiàn)在Vue中存儲業(yè)務狀態(tài)實用技巧

    這篇文章主要為大家介紹了如何通過URL來實現(xiàn)在Vue中存儲業(yè)務狀態(tài)實用技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • Vue 對象和數(shù)據(jù)的強制更新方式

    Vue 對象和數(shù)據(jù)的強制更新方式

    這篇文章主要介紹了Vue 對象和數(shù)據(jù)的強制更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue實現(xiàn)商品列表的無限加載思路和步驟詳解

    vue實現(xiàn)商品列表的無限加載思路和步驟詳解

    這篇文章主要介紹了vue實現(xiàn)商品列表的無限加載思路和步驟詳解,基礎思路是觸底條件滿足之后 page++,拉取下一頁數(shù)據(jù),結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下,
    2024-06-06
  • vuejs手把手教你寫一個完整的購物車實例代碼

    vuejs手把手教你寫一個完整的購物車實例代碼

    這篇文章主要介紹了vuejs-手把手教你寫一個完整的購物車實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • 詳解vue中axios封裝與api接口封裝管理

    詳解vue中axios封裝與api接口封裝管理

    axios的封裝和api接口的統(tǒng)一管理,其實主要目的就是在幫助我們簡化代碼和利于后期的更新維護,在vue項目中,和后臺交互獲取數(shù)據(jù)這塊,我們通常使用的是axios庫,本文就給大家介紹一下axios封裝與api接口封裝管理,需要的朋友可以參考下
    2023-06-06
  • vue3?HighCharts自定義封裝之徑向條形圖的實戰(zhàn)過程

    vue3?HighCharts自定義封裝之徑向條形圖的實戰(zhàn)過程

    highcharts是國外知名基于javascript的圖表庫,下面這篇文章主要給大家介紹了關于vue3?HighCharts自定義封裝之徑向條形圖的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • vue部署正式環(huán)境上傳nginx后遇到的問題及解決

    vue部署正式環(huán)境上傳nginx后遇到的問題及解決

    在Nginx中配置服務器時,如果頁面和靜態(tài)資源無法訪問,并且后端接口被誤解為前端頁面請求,可以通過為`www-data`用戶賦予目錄訪問權限來解決
    2025-12-12
  • vue后臺管理添加多語言功能的實現(xiàn)示例

    vue后臺管理添加多語言功能的實現(xiàn)示例

    這篇文章主要介紹了vue后臺管理添加多語言功能的實現(xiàn)示例,幫助大家更好的理解和學習使用vue框架,感興趣的朋友可以了解下
    2021-04-04
  • Vue簡化用戶查詢/添加功能的實現(xiàn)

    Vue簡化用戶查詢/添加功能的實現(xiàn)

    本文主要介紹了Vue簡化用戶查詢/添加功能的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • vue項目引入字體.ttf的方法

    vue項目引入字體.ttf的方法

    今天小編就為大家分享一篇vue項目引入字體.ttf的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09

最新評論

宁海县| 调兵山市| 罗城| 舒兰市| 习水县| 肇源县| 土默特右旗| 甘洛县| 磐安县| 耒阳市| 灌阳县| 平安县| 商水县| 静安区| 连云港市| 甘谷县| 金平| 巴南区| 松江区| 二连浩特市| 洮南市| 陵水| 汝阳县| 台东县| 花莲市| 建瓯市| 华宁县| 建宁县| 张掖市| 广平县| 涞源县| 甘泉县| 二手房| 乾安县| 抚远县| 章丘市| 上林县| 田东县| 永昌县| 胶南市| 晋城|