Nginx 跨域请参考另外的笔记

SpringMVC 跨域配置

CORS / 跨域资源共享

boot 跨域配置

这个建议看具体的官方文档,里面写得有,不同版本建议的配置不一致,这里就一个过滤器

https://docs.spring.io/spring-boot/docs/2.3.3.RELEASE/reference/htmlsingle/#boot-features-cors 关于制定的版本如何找到对应的在线文档,请看前面的笔记 Spring 开发中的实战

  1. package cn.mrcode.foodiedev.sso;
  2. import org.springframework.context.annotation.Bean;
  3. import org.springframework.context.annotation.Configuration;
  4. import org.springframework.web.cors.CorsConfiguration;
  5. import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
  6. import org.springframework.web.filter.CorsFilter;
  7. /**
  8. * 跨域配置
  9. *
  10. * @author mrcode
  11. * @date 2021/2/13 16:27
  12. */
  13. @Configuration
  14. public class CorsConfig {
  15. @Bean
  16. public CorsFilter corsFilter() {
  17. CorsConfiguration config = new CorsConfiguration();
  18. // 设置运行跨域的地址,也可以使用 * 代替允许所有地址
  19. config.addAllowedOrigin("http://www.mtv.com");
  20. config.addAllowedOrigin("http://www.mtv.com:8080");
  21. config.addAllowedOrigin("http://www.music.com");
  22. config.addAllowedOrigin("http://www.music.com:8080");
  23. config.addAllowedOrigin("*");
  24. // 是否运行携带 cookie 相关信息
  25. // 在前端也有的框架可以配置这一样,前端是否允许跨域的时候携带:axios.defaults.withCredentials = true;
  26. config.setAllowCredentials(true);
  27. // 允许访问所有的 http 请求方式,如 get、post
  28. config.addAllowedMethod("*");
  29. config.addAllowedHeader("*");
  30. // 为 url 添加映射路径
  31. // 允许所有路径使用该配置
  32. UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
  33. source.registerCorsConfiguration("/**", config);
  34. return new CorsFilter(source);
  35. }
  36. }

cookie 跨域配置

实现 CAS/SSO 单点登录系统二