spring 5 中加入了webfilter 可用于實作橫切、與應用程式無關的要求,例如安全性、逾時等。
自己實作
@Component
public class MyWebFilter implements WebFilter {
@Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
System.out.println("===========執行WebFilter自定義filter======");
return chain.filter(exchange);
}
}
這樣就可以将自己的過濾器加入到執行鍊中,ServerWebExchange 中就可以擷取到我們想要
ServerHttpRequest 對象,還可以通過
ServerHttpRequestDecorator 裝飾ServerHttpRequest對象,實作請求流的可重複讀寫