RequestHeaderSize
篩檢程式
RequestHeaderSize
篩檢程式接受 maxSize
和 errorHeaderName
參數。 maxSize
參數是請求標頭允許的最大資料大小 (包含鍵和值)。 errorHeaderName
參數設定包含錯誤訊息的回應標頭名稱,預設為 "errorMessage"。 以下列表組態了 RequestHeaderSize
篩檢程式
application.yml
spring:
cloud:
gateway:
mvc:
routes:
- id: requestheadersize_route
uri: https://example.org
filters:
- RequestHeaderSize=1000B
GatewaySampleApplication.java
import static org.springframework.cloud.gateway.server.mvc.filter.BeforeFilterFunctions.requestHeaderSize;
import static org.springframework.cloud.gateway.server.mvc.handler.GatewayRouterFunctions.route;
import static org.springframework.cloud.gateway.server.mvc.handler.HandlerFunctions.http;
@Configuration
class RouteConfiguration {
@Bean
public RouterFunction<ServerResponse> gatewayRouterFunctionsRequestHeaderSize() {
return route("requestheadersize_route")
.GET("/**", http("https://example.org"))
.before(requestHeaderSize("1000B"))
.build();
}
}
如果任何請求標頭的大小大於 1000 Bytes,這將會傳送狀態 431。