SetRequestHeader GatewayFilter 工厂
SetRequestHeader GatewayFilter Factory
SetRequestHeader GatewayFilter 工厂接收 name 和 value 参数。以下清单配置了一个 SetRequestHeader GatewayFilter:
spring:
cloud:
gateway:
routes:
- id: setrequestheader_route
uri: https://example.org
filters:
- SetRequestHeader=X-Request-Red, Blue
这个 GatewayFilter 会替换(而不是添加)所有具有给定名称的头部。因此,如果下游服务器响应了 X-Request-Red:1234,它将被替换为 X-Request-Red:Blue,这就是下游服务将接收到的内容。
SetRequestHeader 能够识别用于匹配路径或主机的 URI 变量。URI 变量可以在值中使用,并在运行时展开。以下示例配置了一个使用变量的 SetRequestHeader GatewayFilter:
spring:
cloud:
gateway:
routes:
- id: setrequestheader_route
uri: https://example.org
predicates:
- Host: {segment}.myhost.org
filters:
- SetRequestHeader=foo, bar-{segment}