当前位置: 首页 > news >正文

vue:vite 代理服务器 proxy 配置

Vite 代理服务器(Proxy)的配置通常用于开发环境,以解决跨域请求等问题。以下是一个详细的配置步骤:

通过以上步骤,你就可以在 Vite 项目中配置代理服务器,以便在开发过程中方便地访问后端服务。

  1. 找到 Vite 配置文件‌:

    • Vite 的配置文件通常为项目根目录下的 vite.config.js 或 vite.config.ts。如果项目中没有这个文件,可以手动创建一个。
  2. 配置代理‌:

    • 在 vite.config.js 或 vite.config.ts 文件中,通过 export default 导出一个配置对象,并在该对象中添加 proxy 属性。proxy 属性是一个对象,用于配置各个代理规则。
  3. 定义代理规则‌:

    • 每个代理规则都是一个以目标URL为键的对象。该对象可以包含以下属性:
      • target:代理的目标地址,即后端服务的实际地址。
      • changeOrigin:是否改变源地址。通常设置为 true,以便代理服务器能够正确识别请求的来源。
      • rewrite:重写规则,用于修改请求的路径或查询参数等。
      • headers:自定义请求头,用于在代理请求中添加额外的HTTP头。
  4. 示例配置‌:

    以下是一个简单的 Vite 代理配置示例:
    // vite.config.js
    import { defineConfig } from 'vite'
    import vue from '@vitejs/plugin-vue'// https://vite.dev/config/
    export default defineConfig({plugins: [vue()],server: {proxy: {'/api': {target: 'http://localhost:8000', // 后端服务地址changeOrigin: true, // 是否改变源地址rewrite: (path) => path.replace(/^\/api/, '')}}}    
    })

    在上面的示例中,所有以 /api 开头的请求都会被代理到 http://localhost:8000,并且请求路径中的 /api 前缀会被移除。

  5. 重启 Vite‌:npm run dev 

    • 配置完成后,需要重启 Vite 开发服务器,以便使代理配置生效。
  6. 使用代理‌:

    • 在前端代码中,你可以像访问本地资源一样访问代理的后端服务。例如,如果你配置了代理 /api 到 http://localhost:8000,你可以在前端代码中通过 fetch('/api/data') 来访问 http://localhost:8000/data
  7. 注意事项‌:

    • 在设置代理后,建议在开发过程中禁用其他不必要的网络请求,以减少潜在的安全风险。
    • 在生产环境中,通常不会使用代理,而是直接配置后端服务以允许跨域请求,或使用其他安全措施来保护网络环境。
    • 如果以上简单的 proxy 配置不能满足您的需求,还可以安装 http-proxy 中间件
      npm install http-proxy-middleware --save-dev
      npm show http-proxy-middleware
      http-proxy-middleware@3.0.3 | MIT | deps: 6 | versions: 88
      The one-liner node.js proxy middleware for connect, express, next.js and more
      https://github.com/chimurai/http-proxy-middleware#readme
    • 使用 http-proxy-middleware 示例:
      import { defineConfig } from 'vite'
      import vue from '@vitejs/plugin-vue'
      import { createProxyMiddleware } from 'http-proxy-middleware'// vite.config.js
      export default defineConfig({plugins: [vue()],server: {proxy: createProxyMiddleware({context: ['/api', '/auth'],target: 'http://localhost:8000', // 后端服务地址changeOrigin: true // 是否改变源地址})}    
      })
      

       
http://www.lryc.cn/news/542409.html

相关文章:

  • Java【网络原理】(2)初识网络续与网络编程
  • AI+集装箱号码识别技术,主要发展方向和应用潜力
  • 安装可视化jar包部署平台JarManage
  • 后端之JPA(EntityGraph+JsonView)
  • Java数据结构第十三期:走进二叉树的奇妙世界(二)
  • JavaScript系列(86)--现代构建工具详解
  • docker容器网络配置及常用操作
  • Docker 性能优化指南
  • 课程1. 深度学习简介
  • 【cuda学习日记】4.3 结构体数组与数组结构体
  • 2025最新高维多目标优化:基于城市场景下无人机三维路径规划的导航变量的多目标粒子群优化算法(NMOPSO),MATLAB代码
  • 数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例
  • Linux内核,slub分配流程
  • 本地部署DeepSeek-R1(Ollama+Docker+OpenWebUI知识库)
  • Java 实现快速排序算法:一条快速通道,分而治之
  • 20250223下载并制作RTX2080Ti显卡的显存的测试工具mats
  • element-ui的组件使用
  • 医疗AI领域中GPU集群训练的关键技术与实践经验探究(上)
  • 详解Redis淘汰策略
  • HarmonyOS 5.0应用开发——鸿蒙接入高德地图实现POI搜索
  • nginx关于配置SSL后启动失败原因分析
  • 【自学嵌入式(9)ESP8266网络服务器的使用】
  • 危化品经营单位安全管理人员的职责及注意事项
  • 项目实战--网页五子棋(匹配模块)(5)
  • mysql 迁移到人大金仓数据库
  • uniapp 网络请求封装(uni.request 与 uView-Plus)
  • 计算机网络与通讯知识总结
  • DPVS-2:单臂负载均衡测试
  • open webui 部署 以及解决,首屏加载缓慢,nginx反向代理访问404,WebSocket后端服务器链接失败等问题
  • 交通物联网:概念、历史、现状与展望