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

Vite环境下解决跨域问题

在 Vite 开发环境中,可以通过配置代理来解决跨域问题。以下是具体步骤:

  1. 在项目根目录下找到 vite.config.js 文件:如果没有,则需要创建一个。
  2. 配置代理:在 vite.config.js 文件中,使用 server.proxy 选项来设置代理规则。例如,如果你的后端服务器运行在 http://localhost:5054 ,而你的 Vite 开发服务器运行在 http://localhost:3000 ,你可以这样配置:
  3. javascript
import { defineConfig } from 'vite';

export default defineConfig({
  server: {
    proxy: {
      '/api': {
        target: 'http://localhost:5054',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/api/, '')
      }
    }
  }
});

上述代码中,/api 是代理的路径前缀。当浏览器发送以 /api 开头的请求时,Vite 会将请求代理到 http://localhost:5054 上,并去除路径中的 /api 前缀。changeOrigin 设置为 true ,表示修改请求头中的 Origin 字段,使其与目标服务器的域名一致,以避免跨域错误。

4.在前端代码中使用代理路径:修改你的 axios 请求地址,使用代理路径。例如:

const service = axios.create({ baseURL: '/api' });
const response = service.get('User/1/2');

这样,原本跨域的请求就会通过代理服务器转发,从而解决跨域问题。

如果不想在 vite.config.js 中配置代理,也可以使用浏览器的扩展程序来解决跨域问题,如 Allow CORS: Access-Control-Allow-Origin 等。安装并启用扩展程序后,它会在浏览器层面允许跨域请求,不过这种方法只适用于开发环境,生产环境中还是需要在服务器端进行配置。

代码图示

相关文章:

  • 【C++经典例题】杨辉三角问题
  • java自主学习网站(springboot+ssm+mysql)含运行文档
  • 《在 Ubuntu 22.04 上安装 CUDA 11.8 和 Anaconda,并配置环境变量》
  • chromium魔改——绕过无限debugger反调试
  • FreeRTOS同步和互斥机制以及相关API
  • 【开源】Unity 商业级引擎源码加密混淆过马甲包 Il2cpp global-metadata加密方案 Android加固IOS加固
  • Windows修改hosts文件让向日癸软件联网
  • 从开发到上线:基于 Linux 云服务器的前后端分离项目部署实践(Vue + Node.js)
  • 什么是市盈率,通俗解释清楚
  • CAN/FD CAN总线配置 最新详解 包含理论+实战(附带源码)
  • 《JVM考古现场(十六):太初奇点——从普朗克常量到宇宙弦的编译风暴》
  • matlab从pytorch中导入LeNet-5网络框架
  • 数论4 组合数
  • Java全栈面试宝典:线程安全机制与Spring Boot核心原理深度解析
  • 游戏引擎学习第202天
  • 面试算法高频01
  • PostgreSQL有回收站吗?
  • 大语言模型应用和训练(人工智能)
  • STL容器中不进行前置条件检查有可能导致不安全的操作
  • 工程画图-UML类图 组合和聚合
  • 怎么做自己的简历网站/十大计算机培训机构排名
  • wordpress插入链接/seo优化公司信
  • 一般用什么语言做网站/百度推广代理商利润
  • 网站兼容工具/厦门人才网官网招聘信息网
  • 网站异常传播怎么解除/企业网站优化方案
  • 科技网站制作公司/广告牌