在vite.config.ts 增加下面配置

 bypass(req, res, options: any) {
    const proxyURL = options.target + options.rewrite(req.url);
    console.log('proxyURL', proxyURL);
    req.headers['x-req-proxyURL'] = proxyURL;
    res.setHeader('x-req-proxyURL', proxyURL); // 设置响应头可以看到
 }

控制台请求后会在 请求头里添加一个参数 X-Reg-Proxyurl,如下图
在这里插入图片描述

完整配置如下:

env.development

VITE_API_URL='/api/gateway/'

vite.config.ts

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import vueJsx from '@vitejs/plugin-vue-jsx';
import path from 'path';
import { resolve } from 'path';
// https://vitejs.dev/config/
export default defineConfig({
  server: {
    proxy: {
      '/api/gateway/': {
        target: 'http://192.168.0.66:8085',
        changeOrigin: true,
        rewrite: path => path.replace(RegExp(`^\/api\/gateway/`), ''),
        bypass(req, res, options: any) {
          const proxyURL = options.target + options.rewrite(req.url);
          console.log('proxyURL', proxyURL);
          req.headers['x-req-proxyURL'] = proxyURL; 
          res.setHeader('x-req-proxyURL', proxyURL); // 设置响应头可以看到
        }
      }
    }
  },
  plugins: [
    vue(),
    vueJsx()
  ],
  resolve: {
    alias: {
      '@': resolve(__dirname, './src'),
      '*': resolve('')
    }
  }
});

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐