HttpHeadersFilters
HttpHeadersFilters 在請求傳送到下游(例如 NettyRoutingFilter)之前應用。
Forwarded Headers 過濾器
Forwarded Headers 過濾器建立一個 Forwarded 頭部,用於傳送到下游服務。它將當前請求的 Host 頭部、方案和埠新增到任何現有的 Forwarded 頭部中。要啟用此過濾器,請將 spring.cloud.gateway.server.webmvc.trusted-proxies 屬性設定為 Java 正則表示式。此正則表示式定義了在 Forwarded 頭部中出現的受信任代理。
RemoveHopByHop Headers 過濾器
RemoveHopByHop Headers 過濾器從轉發的請求中移除頭部。要移除的頭部預設列表來自 IETF。
-
Connection
-
Keep-Alive
-
Proxy-Authenticate
-
Proxy-Authorization
-
TE
-
Trailer
-
Transfer-Encoding
-
Upgrade
XForwarded Headers 過濾器
XForwarded Headers 過濾器建立各種 X-Forwarded-* 頭部,用於傳送到下游服務。它使用當前請求的 Host 頭部、方案、埠和路徑來建立各種頭部。要啟用此過濾器,請將 spring.cloud.gateway.server.webmvc.trusted-proxies 屬性設定為 Java 正則表示式。此正則表示式定義了在 Forwarded 頭部中出現的受信任代理。
單個頭部的建立可以透過以下布林屬性(預設為 true)進行控制
-
spring.cloud.gateway.server.webmvc.x-forwarded.for-enabled -
spring.cloud.gateway.server.webmvc.x-forwarded.host-enabled -
spring.cloud.gateway.server.webmvc.x-forwarded.port-enabled -
spring.cloud.gateway.server.webmvc.x-forwarded.proto-enabled -
spring.cloud.gateway.server.webmvc.x-forwarded.prefix-enabled
多個頭部的追加可以透過以下布林屬性(預設為 true)進行控制
-
spring.cloud.gateway.server.webmvc.x-forwarded.for-append -
spring.cloud.gateway.server.webmvc.x-forwarded.host-append -
spring.cloud.gateway.server.webmvc.x-forwarded.port-append -
spring.cloud.gateway.server.webmvc.x-forwarded.proto-append -
spring.cloud.gateway.server.webmvc.x-forwarded.prefix-append