vite server正则表达式

vite server支持正则表达式,这样可以在测试时将一些请求模拟转发到本地后端服务的端口。且不会出现跨域的问题。

例如下面的配置,解决了3个问题:

1)API请求URI地址转发到本地后端服务

2)文件资源路径转发到本地后端服务(后端服务上传地址)

3)根目录下所有的txt文件转发到本地后端服务

4)websocket推送转发到本地的推送地址

复制代码
    server: {
      host: '0.0.0.0',
      // https: true,
      hmr: true,
      port: Number.parseInt(env.VITE_APP_PORT, 10),
      /** 跨域设置允许 */
      cors: true,
      /** 端口被占用时,是否直接退出 */
      strictPort: false,
      /** 接口代理 */
      proxy: {
        '^/(api|admin|upload)/': {
          target: 'http://localhost:8080',
          ws: true,
          /** 是否允许跨域 */
          changeOrigin: true
        },
        '^/(.*).txt': {
          target: 'http://localhost:8080',
          ws: true,
          /** 是否允许跨域 */
          changeOrigin: true
        },
        '^/ws': {
          target: 'http://192.168.1.111:15674',
          ws: true,
          /** 是否允许跨域 */
          changeOrigin: true
        }
      }
    },

proxy正则的条件如下,有一些特殊要求:

1)以^号开头的才是正则,否则是普通URI匹配

2)正则里循环匹配必须以分组的方式出现,例如第二条写成常规的^/.*.txt是无法匹配到的,必须把.*用括号括起来

这里记录一笔,怕时间长了忘了

相关推荐
进哥AI研习社18 小时前
构建工具链深度配置——Vite/SWC 与 Tree Shaking 调优
rollup·vite·构建工具·swc·代码分割·esbuild·tree shaking
PedroQue991 天前
v1.4.0:新增 defineUniPage 宏声明页面配置,架构全面重构
前端·vite
xiaohe06012 天前
🤔 v-mortal 是什么?!我只知道 v-model 啊!
vue.js·vite·前端工程化
YIAN3 天前
告别等后端!React+Vite 前端独立开发全流程:接口封装 + Mock 方案 + 状态管理
前端·react.js·vite
PedroQue993 天前
@meng-xi/vite-plugin v1.3.0:generateUni 一键流水线
前端·vite
深念Y3 天前
局域网 HTTP 请求转发 502 问题排查记录
网络·网络协议·http·网络安全·代理·转发·中转
PedroQue994 天前
Vite 1.2.0发布:自动生成pages.json
前端·vite
一个处女座的程序猿6 天前
Computer之Server:caddy(可扩展的服务器平台)的简介、安装和使用方法、案例应用之详细攻略
运维·服务器·server·caddy
csdn_aspnet7 天前
C# 在逗号分割的字符串中判断是否包含指定字符
c#·正则·linq·string·regex·contains
sir.山8 天前
在 Vue 3 项目中使用 Mock 数据
前端·vue.js·vue3·vite