SpringGateway处理跨域

微服务在处理跨域时仅需要在网关添加 CorsWebFilter 即可,

如果浏览器还提示 CORS 那么请检查你的 response header,每种类型仅允许返回一个,不允许重复名称存在

java 复制代码
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.reactive.CorsWebFilter;
import org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource;
import org.springframework.web.util.pattern.PathPatternParser;

@Configuration
public class CorsConfig {
    private static final String ALL = "*";

    @Order(Ordered.HIGHEST_PRECEDENCE)
    @Bean
    public CorsWebFilter corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        // cookie跨域
        config.setAllowCredentials(Boolean.TRUE);
        config.addAllowedMethod(ALL);
        config.addAllowedOriginPattern(ALL);
        config.addAllowedHeader(ALL);
        // 配置前端js允许访问的自定义响应头
        config.addExposedHeader("setToken");

        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser());
        source.registerCorsConfiguration("/**", config);

        return new CorsWebFilter(source);
    }
}
相关推荐
Every exam must be6 小时前
10.27 JS学习12
开发语言·javascript·学习
一辉ComeOn6 小时前
【大数据高并发核心场景实战】 数据持久化层 - 查询分离
java·大数据·数据库·elasticsearch·缓存·oracle
雾里云山6 小时前
pgsql常用函数
java·开发语言·数据库·sql
星期天要睡觉6 小时前
提示词(Prompt)——链式思维提示词(Chain-of-Thought Prompting)在大模型中的调用(以 Qwen 模型为例)
开发语言·人工智能·python·语言模型·prompt
崎岖Qiu6 小时前
【设计模式笔记11】:简单工厂模式优缺分析
java·笔记·设计模式·简单工厂模式
SimonKing6 小时前
【开发者必备】Spring Boot 2.7.x:WebMvcConfigurer配置手册来了(七)!
java·后端·程序员
high20116 小时前
【架构】-- OpenFeign:声明式 HTTP 客户端框架深度解析
java·架构
报错小能手6 小时前
计算机网络自顶向下方法16——应用层 因特网视频 HTTP流和DASH
开发语言·计算机网络·php
用户6120414922136 小时前
基于JSP+Servlet+JDBC学生成绩管理系统
java·前端·javascript