| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import { fileURLToPath, URL } from 'node:url'
- import { defineConfig } from 'vite'
- import vue from '@vitejs/plugin-vue'
- import vueJsx from '@vitejs/plugin-vue-jsx'
- // https://vite.dev/config/
- export default defineConfig({
- plugins: [
- vue(),
- vueJsx(),
- // vueDevTools(),
- ],
- css: {
- postcss: './postcss.config.js'
- },
- resolve: {
- alias: {
- '@': fileURLToPath(new URL('./src', import.meta.url))
- },
- },
- server: {
- fs: {
- // 允许访问上层目录的node_modules (用于KaTeX字体等资源)
- allow: ['..']
- },
- proxy: {
- // ===== TTS语音合成服务代理(最具体的路径,优先匹配) =====
- '/api/tts': {
- target: 'http://172.16.29.101:22000',
- changeOrigin: true,
- rewrite: (path) => path.replace(/^\/api\/tts/, '/tts'),
- configure: (proxy, options) => {
- proxy.on('error', (err, req, res) => {
- console.log('TTS代理错误:', err);
- });
- proxy.on('proxyReq', (proxyReq, req, res) => {
- console.log('TTS代理请求:', req.method, req.url);
- });
- proxy.on('proxyRes', (proxyRes, req, res) => {
- console.log('TTS代理响应:', proxyRes.statusCode, req.url);
- });
- }
- },
- // ===== ReportGenerator API 代理(最具体的路径,优先匹配) =====
- '/api/v1/report': {
- target: 'http://127.0.0.1:28002',
- changeOrigin: true
- },
- // ===== SSE控制API代理 =====
- '/api/v1/sse': {
- target: 'http://127.0.0.1:28002',
- changeOrigin: true
- },
- // ===== 认证网关代理(本地/测试环境使用本地网关) =====
- '^/api/(auth|user|logs|captcha|ticket)': {
- target: 'http://127.0.0.1:28004', // 本地认证网关
- changeOrigin: true,
- },
- // 业务 API 代理
- '/apiv1': {
- target: 'http://127.0.0.1:22001',
- changeOrigin: true,
- }
- }
- }
- })
|