Spring Boot 最简单的解决跨域问题

Posted fengda1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot 最简单的解决跨域问题相关的知识,希望对你有一定的参考价值。

跨域问题(CORS)

CORS全称Cross-Origin Resource Sharing,意为跨域资源共享。当一个资源去访问另一个不同域名或者同域名不同端口的资源时,就会发出跨域请求。如果此时另一个资源不允许其进行跨域资源访问,那么访问的那个资源就会遇到跨域问题

解决问题

覆盖默认的CorsFilter,添加GlobalCorsConfig配置文件来允许跨域访问。

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;

/**
 * 全局跨域配置
 */
@Configuration
public class GlobalCorsConfig {

    /**
     * 允许跨域调用的过滤器
     */
    @Bean
    public CorsFilter corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        //允许所有域名进行跨域调用
        config.addAllowedOrigin("*");
        //允许跨越发送cookie
        config.setAllowCredentials(true);
        //放行全部原始头信息
        config.addAllowedHeader("*");
        //允许所有请求方法跨域调用
        config.addAllowedMethod("*");
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", config);
        return new CorsFilter(source);
    }
}

以上是关于Spring Boot 最简单的解决跨域问题的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot中通过CORS解决跨域问题

Spring Boot2.XX版本解决跨域问题

Spring Boot2.XX版本解决跨域问题

Spring Boot前后端分离跨域问题

spring boot解决跨域问题

spring boot解决跨域问题