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

AxiosError: Network Error

 不知怎么的,项目还在开发阶段,之前还好好的,玩儿了两天再一打开发现页面无法显示数据了,报错如下:

 我以为是后端出问题了,但是后端控制台无报错,又用postman测试了一下,可以获取到数据。

后来检查了一下请求,发现是跨域请求换端口的问题,前端是5137,后端是8080,之前是可以的一直没问题

server: {port: 5173,proxy:{'/api':{target:'http://localhost:8080',//后端接口的域名 changeOrigin:true,//是否改变源rewrite:(path)=>path.replace(/^\/api/,''),//重写路径,去掉路径中的/api}}}

 就是换源然后重写路径嘛,之前一直没问题,后来查了资料,有一种说法是前端做了处理还不够,后端也要设置接受这种处理。解决方法如下:

在后端的每一个controller添加@CrossOrigin注解

@CrossOrigin 是 Spring Framework 提供的一个注解,用于解决跨域资源共享(CORS)的问题。当您在后端服务中使用这个注解时,它允许您的后端服务接受来自不同源(即不同域名、协议或端口)的请求。

为什么需要 @CrossOrigin 注解?

在Web开发中,出于安全考虑,浏览器默认会限制从一个源发起的脚本对不同源的资源的访问。这称为同源策略(Same-Origin Policy)。如果后端服务和前端应用不在同一个源上,那么直接发起请求会遭到浏览器的阻止,从而导致跨域请求失败。

@CrossOrigin 注解的作用

  1. 允许跨域请求:使用 @CrossOrigin 注解可以告诉Spring框架,该接口允许跨域请求。这意味着来自不同源的请求将被接受。

  2. 配置CORS响应头@CrossOrigin 注解会自动配置响应头,如 Access-Control-Allow-Origin,以允许跨域请求。您可以在注解中指定允许哪些源访问您的后端服务。

  3. 简化配置:使用 @CrossOrigin 注解可以简化跨域请求的配置,无需手动设置响应头,注解会自动处理这些细节。

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

相关文章:

  • CDefFolderMenu_MergeMenu函数分析之添加了分割线和属性菜单项两项
  • mysql的源码包安装
  • win11系统无法打开软件_组策略无法打开_gpedit.msc不生效_为了对电脑进行保护,已经阻止此应用---Windows工作笔记057
  • 【JAVA】io流之缓冲流
  • from flask_session import Session 为什么是Session(app)这么用?
  • AI赋能的未来城市:如何用智能化提升生活质量?
  • 【Go】Go wire 依赖注入
  • 深度集成DeepSeek与Java开发:智能编码新纪元全攻略 [特殊字符]
  • WEB前端将指定DOM生成图片并下载最佳实践(html2canvas)
  • 掌握.NET Core后端发布流程,如何部署后端应用?
  • 深度学习学习笔记(34周)
  • C++ 设计模式-备忘录模式
  • TOGAF之架构标准规范-信息系统架构 | 应用架构
  • 第一届网谷杯
  • Linux(ubuntu) GPU CUDA 构建Docker镜像
  • mysql -DQL语句和DCL语句
  • 掌握 ElasticSearch 组合查询:Bool Query 详解与实践
  • C++ 类和对象(友元、内部类、匿名对像)
  • PostgreSQL 常用函数
  • 掌握 ElasticSearch 四种match查询的原理与应用
  • 解决:Conda虚拟环境中未设置CUDA_HOME的问题
  • easyexcel和poi同时存在版本问题,使用easyexcel导出excel设置日期格式
  • HarmonyOS 开发套件 介绍——下篇
  • 关于order by的sql注入实验
  • Transformers快速入门-学习笔记
  • luci界面开发中的MVC架构——LuCI介绍(二)
  • 第1章大型互联网公司的基础架构——1.10 其他NoSQL数据库
  • DeepSeek+Kimi生成高质量PPT
  • web网络安全:跨站脚本攻击(XSS)
  • 【Python爬虫(44)】分布式爬虫:筑牢安全防线,守护数据之旅