8. HttpHeadersFilters
HttpHeadersFilters 在将请求发送到下游之前应用于请求,例如在NettyRoutingFilter。
8.1. 转发标头过滤器
Forwarded标头过滤器创建一个Forwarded标头以发送到下游服务。它将Host当前请求的标头、方案和端口添加到任何现有Forwarded标头。
8.2. RemoveHopByHop 标头过滤器
RemoveHopByHop
标头过滤器从转发的请求中删除标头。删除的默认标头列表来自IETF
。
默认删除的标题是:
-
Connection
-
Keep-Alive
-
Proxy-Authenticate
-
Proxy-Authorization
-
TE
-
Trailer
-
Transfer-Encoding
-
Upgrade
要更改此设置,请将spring.cloud.gateway.filter.remove-hop-by-hop.headers属性设置为要删除的标头名称列表。
8.3. XForwarded 标头过滤器
XForwarded
标头过滤器创建各种X-Forwarded-*标头以发送到下游服务。它使用Host
当前请求的标头、方案、端口和路径来创建各种标头。
可以通过以下布尔属性控制单个标题的创建(默认为 true):
-
spring.cloud.gateway.x-forwarded.for-enabled
-
spring.cloud.gateway.x-forwarded.host-enabled
-
spring.cloud.gateway.x-forwarded.port-enabled
-
spring.cloud.gateway.x-forwarded.proto-enabled
-
spring.cloud.gateway.x-forwarded.prefix-enabled
附加多个标题可以由以下布尔属性控制(默认为 true):
-
spring.cloud.gateway.x-forwarded.for-append
-
spring.cloud.gateway.x-forwarded.host-append
-
spring.cloud.gateway.x-forwarded.port-append
-
spring.cloud.gateway.x-forwarded.proto-append
-
spring.cloud.gateway.x-forwarded.prefix-append