路由过滤器允许以某种方式修改传入的HTTP请求或传出的HTTP响应。路由过滤器仅适用于特定的路由。Spring Cloud Gateway包含许多内置的网关过滤器工厂。
要了解如何使用以下任何过滤器的更详细示例,请查看单元测试。
1.AddRequestHeader GatewayFilter工厂
AddRequestHeader GatewayFilter工厂(添加请求头网关过滤器工厂)接受name和value两个参数。下面是一个配置AddRequestHeader GatewayFilter的示例:
application.yml
spring:
cloud:
gateway:
routes:
- id: add_request_header_route
uri: https://example.org
filters:
- AddRequestHeader=X-Request-red, blue
这个配置为所有匹配的请求,在下游请求的头部中添加了"X-Request-red:blue"的请求头。
AddRequestHeader 过滤器可以识别用于匹配路径或主机的URI变量。可以在value中使用URI变量,并在运行时进行扩展。以下是一个配置使用变量的 AddRequestHeader GatewayFilter 的示例:
application.yml
spring:
cloud:
gateway:
routes:
- id: add_request_header_route
uri: https://example.org
predicates:
- Path=/re