news 2026/4/3 6:30:37

SpringBoot 跨域报错

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SpringBoot 跨域报错

跨域问题产生的原因

2. 违反安全规范

W3C 的 CORS 规范和各大安全审计标准(如 OWASP)都明确指出:

  • 🛡️ 核心原因:防止敏感数据泄露

    当你配置allowedOriginPatterns("*")并且允许凭据(allowCredentials=true)时,你实际上是在告诉浏览器:

    任何网站都可以向我的服务器发送请求,并且可以携带用户的登录信息(Cookie)。”

    这会带来严重的安全隐患:

    1. 跨站请求伪造 (CSRF) 与数据窃取

    如果生产环境允许所有域名(*)携带凭据访问,攻击者可以制作一个恶意网页(例如通过钓鱼邮件诱导你打开):

  • 攻击原理:恶意网页中的 JavaScript 代码会利用你的浏览器(此时你可能已经登录了公司的内部系统)向你的 API 服务器发送请求。
  • 后果:因为服务器配置了*,浏览器会允许这个跨域请求,并自动带上你的 Cookie。服务器收到请求后,误以为是你本人在操作,就会返回敏感数据(如用户资料、订单信息等)给恶意网站。
  • 结果:用户的隐私数据被窃取,甚至账户被恶意操作。
  • Access-Control-Allow-Credentials: true时,Access-Control-Allow-Origin绝对不能*
  • 必须显式指定具体的域名,以确保信任边界清晰。

SpringBoot 中常见的跨域报错

  • 前端控制台报错示例

解决方案:全局 CORS 配置

📊 代码参数与 HTTP 头的映射

为了让你更直观地看到代码是如何变成 HTTP 协议的,整理了这个对应表:

你的代码配置生成的 HTTP 响应头作用说明
.allowedOriginPatterns("*")Access-Control-Allow-Origin: *允许任何域名访问资源
.allowedMethods("GET", "POST"...)Access-Control-Allow-Methods: ...告诉浏览器允许使用的 HTTP 动词
.allowedHeaders("*")Access-Control-Allow-Headers: ...允许请求中携带的自定义头字段
.allowCredentials(true)Access-Control-Allow-Credentials: true允许携带 Cookie 或认证信息
.maxAge(3600)Access-Control-Max-Age: 3600预检请求缓存 1 小时,减少重复 OPTIONS 请求
  • 使用WebMvcConfigurer配置全局跨域
  • 示例代码:
    @Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("*") .allowedMethods("GET", "POST", "PUT", "DELETE"); } }
最佳实践建议
  • 生产环境避免使用*通配符
  • 结合具体业务限制allowedOrigins
  • 使用allowedHeaders精细化控制
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/2 14:10:36

金叶仪器微型空气站解决方案助力精细化环境监测与管理

在环境监测领域,随着对空气质量数据精细化、实时化需求的不断提升,传统大型监测站的部署模式已难以全面覆盖多样化的监测场景。针对社区、园区、道路、工地等局部区域的空气质量管理,一种灵活、高效、易部署的小型微型空气监测站解决方案应运…

作者头像 李华
网站建设 2026/4/1 18:56:40

IEEE出版|2026年人工智能与社交网络系统国际学术会议(AISNS 2026)

中国 杭州 2026年01月09日-2026年01月11日 最新通知:AISNS 2026 一上线:Entropy 官网| Entropy | Conferences 最新通知:组委会将在AISNS2026所录用的文章中,根据论文质量遴选优秀论文推荐至专题。 专题名称:社交…

作者头像 李华
网站建设 2026/4/2 13:04:21

阿里云ESA:一起领ESA免费套餐,CDN升级版防护加速服务。

之前用一阿里的CDN加速,觉得还可以,就是网站流量大,太费钱了。一个月费了几十个G。 现在发现一个新玩意EAS。全名叫:边缘安全加速 ESA。 什么是ESA ESA提供动静态加速、TCP/UDP四层加速,加速的同时支持边缘大流量DDo…

作者头像 李华
网站建设 2026/3/30 11:13:01

FlexiPDF(专业PDF编辑软件)

FlexiPDF 是由 SoftMaker 公司开发的一款适用于 Windows 系统的专业 PDF 编辑软件,作为 Adobe Acrobat 的 GDPR 兼容替代方案,它以接近 Word 的操作体验降低了 PDF 编辑门槛,同时覆盖从基础编辑到高级智能处理的全场景需求,适配个…

作者头像 李华