当前位置:首页 > VUE

vue cli实现反向代理

2026-02-24 09:31:14VUE

配置反向代理

在 Vue CLI 项目中,可以通过修改 vue.config.js 文件配置反向代理。假设后端 API 地址为 http://localhost:3000,需要将所有以 /api 开头的请求代理到该地址。

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}

代理配置参数说明

  • target:指定需要代理到的目标地址。
  • changeOrigin:修改请求头中的 Host 为目标地址的域名,避免跨域问题。
  • pathRewrite:重写请求路径,例如将 /api/user 转换为 /user

多路径代理配置

如果需要代理多个路径到不同的目标地址,可以配置多个代理规则。

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      },
      '/auth': {
        target: 'http://localhost:4000',
        changeOrigin: true,
        pathRewrite: {
          '^/auth': ''
        }
      }
    }
  }
}

环境变量配置

为了区分开发环境和生产环境的 API 地址,可以使用环境变量。在项目根目录创建 .env.development.env.production 文件。

.env.development

VUE_APP_API_BASE_URL=/api

.env.production

VUE_APP_API_BASE_URL=https://production-api.com

在代码中通过 process.env.VUE_APP_API_BASE_URL 访问环境变量。

请求示例

在 Vue 组件中发起请求时,直接使用配置的代理路径。

vue cli实现反向代理

axios.get('/api/user')
  .then(response => {
    console.log(response.data)
  })
  .catch(error => {
    console.error(error)
  })

注意事项

  • 反向代理仅在开发环境生效,生产环境需要通过服务器(如 Nginx)配置代理。
  • 修改 vue.config.js 后需要重启开发服务器。

标签: vuecli
分享给朋友:

相关文章

vue单页面实现登录

vue单页面实现登录

实现登录功能的基本流程 在Vue单页面应用中实现登录功能,通常需要以下几个关键步骤: 创建登录表单组件 使用Vue的模板语法创建包含用户名和密码输入框的表单,并绑定数据到组件的data属性。 <…

vue实现3d宇宙

vue实现3d宇宙

Vue实现3D宇宙效果 使用Three.js库 Three.js是一个强大的JavaScript 3D库,可以轻松集成到Vue项目中。安装Three.js依赖: npm install three…

vue实现主题

vue实现主题

Vue 实现主题的方法 使用 CSS 变量动态切换主题 定义全局 CSS 变量,通过修改这些变量实现主题切换。在 Vue 的根组件或全局样式中定义变量: :root { --primary-co…

vue 实现闪烁

vue 实现闪烁

Vue 实现闪烁效果的方法 方法一:使用 CSS 动画 在 Vue 组件中定义一个闪烁的 CSS 动画,通过绑定 class 或 style 来控制元素的闪烁效果。 <template>…

vue实现图册

vue实现图册

Vue实现图册功能 在Vue中实现图册功能通常涉及图片展示、切换、缩放等交互效果。以下是常见的实现方法和关键代码示例: 基础图册组件结构 使用Vue单文件组件构建基础结构: <templat…

vue el 实现

vue el 实现

Vue 中使用 Element UI (el) 的实现方法 Element UI 是一个基于 Vue 的组件库,提供丰富的 UI 组件,常用于快速构建企业级中后台产品。以下介绍 Vue 项目中集成和使…