From d6d7d9411f54323045f3e23e2b1a183c098c6f79 Mon Sep 17 00:00:00 2001 From: skycurtain Date: Wed, 7 Oct 2026 20:56:32 +0800 Subject: [PATCH] =?UTF-8?q?chore(web):=20Vite=20=E5=BC=80=E5=8F=91?= =?UTF-8?q?=E4=BB=A3=E7=90=86=20/api=20=E5=88=B0=E6=AF=8D=E4=BD=93?= =?UTF-8?q?=E5=90=8E=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/vite.config.ts | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/apps/web/vite.config.ts b/apps/web/vite.config.ts index ace127e..1d8ae59 100644 --- a/apps/web/vite.config.ts +++ b/apps/web/vite.config.ts @@ -1,20 +1,28 @@ -import { fileURLToPath, URL } from 'node:url' +import { fileURLToPath, URL } from "node:url"; -import { defineConfig } from 'vite' -import vue from '@vitejs/plugin-vue' -import vueJsx from '@vitejs/plugin-vue-jsx' -import vueDevTools from 'vite-plugin-vue-devtools' +import { defineConfig } from "vite"; +import vue from "@vitejs/plugin-vue"; +import vueJsx from "@vitejs/plugin-vue-jsx"; +import vueDevTools from "vite-plugin-vue-devtools"; + +/** 后端母体端口(与根 .env 的 PORT / AGENTS 约定一致) */ +const API_TARGET = process.env.VITE_API_PROXY_TARGET ?? "http://127.0.0.1:18456"; // https://vite.dev/config/ export default defineConfig({ - plugins: [ - vue(), - vueJsx(), - vueDevTools(), - ], + plugins: [vue(), vueJsx(), vueDevTools()], resolve: { alias: { - '@': fileURLToPath(new URL('./src', import.meta.url)), + "@": fileURLToPath(new URL("./src", import.meta.url)), }, }, -}) + server: { + proxy: { + // 契约:/api/* 专属接口;SPA 路由不进 /api(公共约定 §2) + "/api": { + target: API_TARGET, + changeOrigin: true, + }, + }, + }, +});