SpringCloudGetaway设置允许跨域

SpringCloudGetaway跨域

在yml中添加
spring:
  cloud:
    gateway:
      globalcors:
        corsConfigurations:
          '[/**]':
          	# 允许携带认证信息
            allow-credentials: true
            # 允许跨域的源(网站域名/ip),设置*为全部
            allowedOrigins: "*"
            # 允许跨域的method, 默认为GET和OPTIONS,设置*为全部
            allowedMethods: "*"
             # 允许跨域请求里的head字段,设置*为全部
            allowedHeaders: "*"
如上如果还是会出现跨域报错的话需要在加上一个配置
spring:
  cloud:
    gateway:
      default-filters:
        - DedupeResponseHeader=Access-Control-Allow-Origin, RETAIN_UNIQUE

解释:报错原因为网关所调用的微服务本身也具有防跨域, gateway 和下游系统同时支持了跨域,都会向 response header 中增加 Access-Control-Allow-Origin*,所以出现重复的 *。所以需要使用DedupeResponseHeader 来处理一下响应头重复的问题。

DedupeResponseHeader有三个策略:RETAIN_FIRSTRETAIN_LASTRETAIN_UNIQUE,我们使用RETAIN_UNIQUE即可。

注意: 该版本需要使用高版本的getaway,推荐使用G版以上

如果觉得有帮助的话给个免费的点赞吧,Thanks♪(・ω・)ノ

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值