HttpHeadersFilters

HttpHeadersFilters 在請求被髮送到下游(例如在 NettyRoutingFilter 中)之前應用。

Forwarded Headers Filter

Forwarded 頭部過濾器建立一個 Forwarded 頭部,用於傳送到下游服務。它將當前請求的 Host 頭部、方案和埠新增到任何現有的 Forwarded 頭部中。要啟用此過濾器,請將 spring.cloud.gateway.server.webflux.trusted-proxies 屬性設定為 Java 正則表示式。此正則表示式定義了在 Forwarded 頭部中出現的受信任代理。

可以透過將以下屬性設定為 true(預設為 false)來啟用 Forwarded by 頭部部分:

  • spring.cloud.gateway.server.webflux.forwarded.by.enabled=true

RemoveHopByHop Headers Filter

RemoveHopByHop 頭部過濾器從轉發請求中移除頭部。預設移除的頭部列表來自 IETF

預設移除的頭部包括:
  • Connection

  • Keep-Alive

  • Proxy-Authenticate

  • Proxy-Authorization

  • TE

  • Trailer

  • Transfer-Encoding

  • Upgrade

要更改此設定,請將 spring.cloud.gateway.server.webflux.filter.remove-hop-by-hop.headers 屬性設定為要移除的頭部名稱列表。

XForwarded Headers Filter

XForwarded 頭部過濾器建立各種 X-Forwarded-* 頭部,用於傳送到下游服務。它使用當前請求的 Host 頭部、方案、埠和路徑來建立各種頭部。要啟用此過濾器,請將 spring.cloud.gateway.server.webflux.trusted-proxies 屬性設定為 Java 正則表示式。此正則表示式定義了在 Forwarded 頭部中出現的受信任代理。

可以透過以下布林屬性(預設為 true)控制單個頭部的建立:

  • spring.cloud.gateway.server.webflux.x-forwarded.for-enabled

  • spring.cloud.gateway.server.webflux.x-forwarded.host-enabled

  • spring.cloud.gateway.server.webflux.x-forwarded.port-enabled

  • spring.cloud.gateway.server.webflux.x-forwarded.proto-enabled

  • spring.cloud.gateway.server.webflux.x-forwarded.prefix-enabled

可以透過以下布林屬性(預設為 true)控制多個頭部的追加:

  • spring.cloud.gateway.server.webflux.x-forwarded.for-append

  • spring.cloud.gateway.server.webflux.x-forwarded.host-append

  • spring.cloud.gateway.server.webflux.x-forwarded.port-append

  • spring.cloud.gateway.server.webflux.x-forwarded.proto-append

  • spring.cloud.gateway.server.webflux.x-forwarded.prefix-append

© . This site is unofficial and not affiliated with VMware.