关于springboot2.4跨域配置问题

 更新时间:2021年07月22日 14:17:30   作者:似水已流年  
这篇文章主要介绍了springboot2.4跨域配置的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

 1、如果只是一个简单的springboot demo,用以下配置就行
新建config类

```
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
/**
 * @author yk
 * @date 2021/7/19 14:36
 */
@Configuration
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOriginPatterns("*")
                .allowedMethods("*")
                .maxAge(3600)
                .allowCredentials(true);
    }
}

```

2、但是实际开发中我们需要结合,spring-security、oauth2等等,就会发现上面的配置失效了,那是因为前面的Filter优先级太高了,那我们可以采取如下配置

```

import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
 
/**
 * @author yk
 * @date 2021/7/19 16:21
 */
@Configuration
public class CrosConfig {
 
    @Bean
    public FilterRegistrationBean corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        config.setAllowCredentials(true);
        config.addAllowedOriginPattern("*");
        config.addAllowedHeader("*");
        config.addAllowedMethod("*");
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", config);
        FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
        //这里设置优先级最高
        bean.setOrder(Ordered.HIGHEST_PRECEDENCE);
        return bean;
    }
}

到此这篇关于springboot2.4跨域配置的文章就介绍到这了,更多相关springboot跨域配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 学习java一定要知道的垃圾收集器

    学习java一定要知道的垃圾收集器

    这篇文章主要介绍了学习java一定要知道的垃圾收集器,垃圾收集器的发展路线,简单来说是随着内存越来越大而发生变化,更多相关介绍需要的朋友可以参考一下
    2022-07-07
  • mybatis 获取无数据的字段不显示的问题

    mybatis 获取无数据的字段不显示的问题

    这篇文章主要介绍了mybatis 获取无数据的字段不显示的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java的几种文件拷贝方式示例详解

    Java的几种文件拷贝方式示例详解

    在Java编程中文件操作是常见且重要的任务之一,其中文件拷贝是一种基本操作,这篇文章主要给大家介绍了关于Java几种文件拷贝方式的相关资料,文中给出了详细的代码示例,需要的朋友可以参考下
    2024-08-08
  • 手动模拟JDK动态代理的方法

    手动模拟JDK动态代理的方法

    这篇文章主要介绍了手动模拟JDK动态代理的方法,帮助大家更好的了解和学习Java 代理的相关知识,感兴趣的朋友可以了解下
    2020-11-11
  • java编程ThreadLocal上下传递源码解析

    java编程ThreadLocal上下传递源码解析

    这篇文章主要为大家介绍了java编程中ThreadLocal提供的上下传递方式的源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-03-03
  • Spring的@Configuration使用与原理

    Spring的@Configuration使用与原理

    这篇文章主要介绍了Spring的@Configuration使用与原理,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,需要的朋友可以参考下
    2023-05-05
  • Java让泛型实例化的方法

    Java让泛型实例化的方法

    这篇文章主要介绍了Java让泛型实例化的方法,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • 轻松理解Java面试和开发中的IoC(控制反转)

    轻松理解Java面试和开发中的IoC(控制反转)

    在Java开发中,IoC意 味着将你设计好的类交给系统去控制,而不是在你的类内部控制。这称为控制反转。下文给大家介绍Java面试和开发中的IoC(控制反转)知识,需要的朋友参考下吧
    2017-07-07
  • SpringCache缓存处理详解

    SpringCache缓存处理详解

    这篇文章主要介绍了SpringCache缓存处理详解,SpringCache是一个框架,实现了基于注解缓存功能,只需要简单地加一个注解,就能实现缓存功能,需要的朋友可以参考下
    2023-09-09
  • Hibernate实现many-to-many的映射关系

    Hibernate实现many-to-many的映射关系

    今天小编就为大家分享一篇关于Hibernate实现many-to-many的映射关系,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03

最新评论