[Spring Boot] 解决跨域请求问题

 一.摘要

  一般前端后端分离开发的项目经常出现该类问题,浏览器均默认开启了同源策略,它指Ajax请求所在的页面和被请求的页面在协议、域名、端口均相同才能被访问,否则就会报错。下面是其中一种解决方式;其他的方法参考:https://www.cnblogs.com/sueyyyy/p/10129575.html

二.解决方式

1. 添加配置类:

全局跨域配置,适用于接口多的场景

复制代码
1 //解决跨域访问问题 2 @Configuration 3 public class CorsConfig implements WebMvcConfigurer { 4 @Bean 5 public WebMvcConfigurer corsConfigurer() 6 { 7 return new WebMvcConfigurer() { 8 @Override 9 public void addCorsMappings(CorsRegistry registry) { 10 registry.addMapping("/**"). 11 allowedOrigins("*"). //允许跨域的域名,可以用*表示允许任何域名使用 12 allowedMethods("*"). //允许任何方法(post、get等) 13 allowedHeaders("*"). //允许任何请求头 14 allowCredentials(true). //带上cookie信息 15 exposedHeaders(HttpHeaders.SET_COOKIE).maxAge(3600L); //maxAge(3600)表明在3600秒内,不需要再发送预检验请求,可以缓存该结果 16 } 17 }; 18 } 19 }
复制代码

 2. 添加 @CrossOrigin 注解

作用于类或者方法上,适用于接口很少的场景

posted @   小贼的自由  阅读(59)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示