Springboot解决跨域问题

蔚落 2024-04-17 06:45 195阅读 0赞

跨域问题

在Spring Boot中解决跨域问题的原因是因为浏览器的同源策略(Same-Origin Policy)限制了从一个源加载的文档或脚本如何与来自另一个源的资源进行交互。如果前端页面和后端服务不在同一个源(域名、协议、端口号都不相同),浏览器会阻止跨域请求,从而导致跨域问题。

为了解决跨域问题,可以在Spring Boot应用程序中配置CORS(跨域资源共享)策略,允许跨域请求。常见的解决方法是在后端代码中添加CORS配置,允许特定的域名或所有域名的请求。可以使用Spring Boot提供的@CrossOrigin注解或配置WebMvcConfigurer来实现跨域请求的处理。

配置CorsConfig类

  1. package com.bs.bszhsq.config;
  2. @Configuration
  3. public class CorsConfig {
  4. // 当前跨域请求最大有效时长。这里默认1天
  5. private static final long MAX_AGE = 24 * 60 * 60;
  6. @Bean
  7. public CorsFilter corsFilter() {
  8. UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
  9. CorsConfiguration corsConfiguration = new CorsConfiguration();
  10. corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址
  11. corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头
  12. corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法
  13. corsConfiguration.setMaxAge(MAX_AGE);
  14. source.registerCorsConfiguration("/**", corsConfiguration); // 4 对接口配置跨域设置
  15. return new CorsFilter(source);
  16. }
  17. }

后记
????美好的一天,到此结束,下次继续努力!欲知后续,请看下回分解,写作不易,感谢大家的支持!! ???

发表评论

表情:
评论列表 (有 0 条评论,195人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Springboot解决问题

    (跨域资源共享)策略,允许跨域请求。常见的解决方法是在后端代码中添加CORS配置,允许特定的域名或所有域名的请求。可以使用Spring Boot提供的@CrossOrig...

    相关 springboot解决问题

        跨域是前后端分离,前端页面发起异步ajax请求,而浏览器因为同源策略导致请求失败,请求正确到了服务端,而且服务端也正常处理,只不过浏览器不认可,所以跨域问题的门槛是浏览