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

跨域问题之前后端解决办法

由于浏览器有同源策略 同源是指 (协议+域名+端口)相同的请求访问资源 否则就会出现跨域问题

  • http://xxx.com -> https://xxx.com 存在跨域 协议不同

  • 127.x.x.x.:8081 -> 127.x.x.x.:8082 存在跨域 端口不同

  • www.xxxx.com -> www.yyyy.com 存在跨域 域名不同

上述图片可以看到 是端口号不同导致的跨域问题

如何解决跨域问题?

1.1 前端配置代理

前端请求先访问前端服务器(代理)

由于前端请求和前端服务器 协议、域名(ip)、端口一致所以不会出现跨域问题

由前端服务器把请求发给后端服务器

后端服务器把响应返回给前端服务器(代理)

代理再把响应返回给浏览器

 

  1. 客户端浏览器(http://localhost:5173) → 前端开发服务器(http://localhost:5173/api/sysUser/login)发送 POST 请求。

  2. 前端服务器(http://localhost:5173/api/sysUser/login) → 后端服务器(http://localhost:9999/sysUser/login)代理转发请求(内部服务器间通信)。

  3. 后端服务器 → 前端开发服务器:返回响应(如登录成功/失败的 JSON 数据)。

  4. 前端开发服务器 → 客户端浏览器:转发后端响应。

server: {proxy: {// 匹配所有以 `/api` 开头的请求路径'/api': {// 目标后端地址(代理转发到的真实后端)target: 'http://127.0.0.1:9999',// 允许跨域(默认 true,可省略)changeOrigin: true, // 重写路径:将 `/api/user` 转为 `/system/user`(如果后端接口前缀是 `/system`)rewrite: (path) => path.replace(/^\/api/, ''),},},},

1.2 后端增加@CrossOrgin注解

http://www.xdnf.cn/news/1044847.html

相关文章:

  • Photoshop矢量蒙版全教程
  • 我的JavaWeb软件开发作品学生信息管理系统项目/JavaWeb软件开发 课程考察标准
  • 【Bluedroid】蓝牙启动之核心模块(startProfiles )初始化与功能源码解析
  • 性能优化 - 案例篇:11种优化接口性能的通用方案
  • pion/webrtc v4.1.2版本深度解析与应用指南
  • 纺织行业SAP解决方案:无锡哲讯科技助力企业智能化升级
  • docker(学习笔记第一课) 使用nginx +https + wordpress
  • Flutter包管理与插件开发完全指南
  • springboot速通
  • 国产操作系统-银河麒麟本地化部署Ollama国产开源的AI大模型Qwen3
  • 【MFC】树控件的使用详解
  • Spring Framework 7.0发布
  • C++问题:纯虚函数和抽象类
  • C语言进阶:深度解剖数据在内存中的存储(浮点型在内存中的存储)
  • 某网站极验4滑块验证码逆向分析
  • vue2中setTimeout中调用methods方法问题
  • BEV 感知算法评价指标简介
  • 安卓9.0系统修改定制化____安卓 9.0系统修改固件 自动开启USB调试教程 开搞篇 六
  • 【Linux】基于策略模式的简单日志设计
  • Spring Boot Web 应用开发
  • 如何用AI绘画工具创作出属于你的拉布布(泡泡玛特)形象?
  • leetcode146-LRU缓存
  • rv1126+opencv多线程同时对视频进行膨胀和腐蚀
  • java 设计模式_行为型_20中介者模式
  • HTML的最基础入门知识,从零开始逐步讲解,适合为后续爬虫技术打基础:
  • Windows下Docker一键部署Dify教程
  • htmlcss考核
  • WebAssembly 2.0:超越浏览器的全栈计算革命
  • 【Zephyr 系列 26】跨平台测试框架设计:CLI + 自动脚本 + OTA 校验一体化方案
  • NVIDIA Isaac GR00T N1.5 人形机器人强化学习入门教程(四)Lerobot、宇树 G1 等不同形态机器人微调教程