Zuul 配置项中 sensitiveHeaders 和 ignoredHeaders 的不同

spring cloud netflix 组件 zuul 一般是用来作为网关服务开发,在涉及到转发路由的时候,zuul会改写request中的头部信息。那么怎么样在项目中配置呢?请看下面:

sensitiveHeaders会过滤客户端附带的headers
例如:zuul.sensitiveHeaders=Cookie,Set-Cookie

如果客户端在发请求是带了Cookie,那么Cookie不会传递给下游服务。

默认:zuul.sensitiveHeaders= 

什么都不设置代表不过滤任何信息,但 zuul.sensitiveHeaders=  一定要附上  。

zuul.ignoredHeaders会过滤服务之间通信附带的headers
例如:zuul.ignoredHeaders=Cookie,Set-Cookie
如果客户端在发请求是带了Cookie,那么Cookie依然会传递给下游服务。但是如果下游服务再转发就会被过滤。作用与上面敏感的Header差不多,事实上sensitive-headers会被添加到ignored-headers中。

还有一种情况就是客户端带了Cookie,在ZUUL的Filter中又addZuulRequestHeader("Cookie", "new"),
那么客户端的Cookie将会被覆盖,此时不需要sensitiveHeaders。

如果设置了sensitiveHeaders: Cookie,那么Filter中设置的Cookie依然不会被过滤。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Gateway(Spring Cloud Gateway)和 Zuul(Netflix Zuul)是两种不同的网关实现方案,因此它们的配置文件内容也有一些不同之处。 1. 语法和格式:Gateway 使用的是 Spring Boot 的配置文件语法,通常是 application.yml 或 application.properties 格式。而 Zuul 使用的是 Netflix 开发的 Archaius 库,配置文件格式为 zuul.XXX。 2. 路由配置:Gateway 的路由配置相对更加简洁和直观,使用 Java Config 或者 YAML 格式进行定义。每个路由规则都可以指定路径匹配、目标 URI、过滤器等信息。而 Zuul 的路由配置需要在配置文件中指定具体的服务名称、路径匹配规则、URL 重定向等。 3. 过滤器配置:Gateway 支持一种基于过滤器工厂的方式来定义过滤器。您可以为每个路由规则指定自定义的过滤器工厂,并在配置文件中进行配置。而 Zuul 使用的是基于 Groovy 的过滤器脚本,您需要在配置文件中指定过滤器类型和脚本路径。 4. 动态路由:Gateway 支持动态路由,可以通过 Spring Cloud Discovery 完成服务发现,并动态更新路由规则。而 Zuul 原生不支持动态路由,需要配合其他组件(如 Eureka)来实现动态路由。 需要注意的是,Gateway 是 Spring Cloud 官方推荐的网关实现方案,具有更好的性能和扩展性。而 Zuul 在一些旧版本的 Spring Cloud 中仍然被使用,但官方已经宣布停止维护和推荐迁移到 Gateway。因此,在新项目中建议使用 Gateway 来替代 Zuul

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值