跨域问题 之浏览器报No 'Access-Cotrol-Allow-Origin‘

2019-11-01 09:25:56 浏览数 (1)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_44580977/article/details/99490093

浏览器报错,

代码语言:javascript复制
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(){
        //1.添加cors配置信息
        CorsConfiguration config=new CorsConfiguration();
        //1)允许的域,不要写*,否则coolie就无法使用了
        config.addAllowedOrigin("http://manage.leyou.com");
        //2)是否发送cookie信息
        config.setAllowCredentials(true);
        //3)允许的请求方式
        config.addAllowedMethod("OPTIONS");
        config.addAllowedMethod("HEAD");
        config.addAllowedMethod("GET");
        config.addAllowedMethod("PUT");
        config.addAllowedMethod("POST");
        config.addAllowedMethod("DELETE");
        config.addAllowedMethod("PATCH");
        //4)允许的头信息
        config.addAllowedHeader("*");

        //2.添加映射路径,我们拦截一切请求
        UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
        configSource.registerCorsConfiguration("/**",config);

        //3.返回新的CorsFilter
        return  new CorsFilter(configSource);

    }
}

总结

解决跨域问题就是在于 /** * 解决跨域问题 * 1.配置 CorsCOnfiguration配置 * 2.使用mvc提供的CorsFilter * @return corsFilter */

0 人点赞