springcloud gateway解决跨域问题

Posted 理舞

tags:

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

/**
 * 跨域允许
 */
@Configuration
public class CorsConfig {
 
    @Bean
    public WebFilter corsFilter() {
        return (ServerWebExchange ctx, WebFilterChain chain) -> {
            ServerHttpRequest request = ctx.getRequest();
            if (CorsUtils.isCorsRequest(request)) {
                ServerHttpResponse response = ctx.getResponse();
                HttpHeaders headers = response.getHeaders();
                headers.set(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, "*");
                headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS, "*");
                headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_METHODS, "");
                headers.add(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true");
                headers.add(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS, "*");
                headers.add(HttpHeaders.ACCESS_CONTROL_MAX_AGE, "3600");
                if (request.getMethod() == HttpMethod.OPTIONS) {
                    response.setStatusCode(HttpStatus.OK);
                    return Mono.empty();
                }
            }
            return chain.filter(ctx);
        };
    }
}

参考博客:https://blog.csdn.net/a294634473/article/details/90715903


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

SpringCloud Gateway跨域配置

SpringCloud 统一网关Gateway -- 全局过滤器 GlobalFilter@Order注解过滤器链执行顺序Gateway跨域问题处理

SpringCloud 统一网关Gateway -- 全局过滤器 GlobalFilter@Order注解过滤器链执行顺序Gateway跨域问题处理

GateWay快速入门

Gateway网关(快速入门断言工厂过滤器工厂全局过滤器),解决跨域问题

SpringCloud Gateway