Spring Cloud Gateway - 处理 “Access-Control-Allow-Origin“ 跨域问题

该文章介绍了如何在SpringBoot应用中创建一个名为GlobalCorsConfig的配置类,用于处理跨域请求。通过定义CorsFilterBean,设置允许的源、头信息、请求方法以及跨域有效期,实现允许所有域的跨域访问,并支持发送Cookie。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在需要作跨域处理的服务中, 新增配置类: CorsFilter

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

/**
 * @author 梦欣
 * @version 1.0
 * @description 跨域配置
 * @date 2023/2/7 3:24
 */
@SpringBootConfiguration
public class GlobalCorsConfig {

    @Bean
    public CorsFilter getCorsFilter() {
        // 获取跨域配置对象
        CorsConfiguration corsConfiguration = new CorsConfiguration();

        // 新增白名单域名进行跨域调用, *表示所有,可以具体指定http://localhost:8601表示只允许http://localhost:8601/跨域
        corsConfiguration.addAllowedOrigin("*");

        // 允许跨域发送Cookie
        corsConfiguration.setAllowCredentials(true);

        // 放行全部原始头信息
        corsConfiguration.addAllowedHeader("*");

        // 允许所有请求方法跨域调用, 比如:GET,Post,(多个方法中间以逗号分隔),*号表示所有
        corsConfiguration.addAllowedMethod("GET, POST, PUT, DELETE, OPTIONS");

        // 跨域检测有效期
        corsConfiguration.setMaxAge(360000L);

        // 获取url基础跨域配置源对象
        UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource();

        // 允许所有地址作跨域处理
        urlBasedCorsConfigurationSource.registerCorsConfiguration("/**", corsConfiguration);

        return new CorsFilter(urlBasedCorsConfigurationSource);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cherish Xin And Meng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值