diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/factory/RemoveResponseHeaderWebFilterFactory.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/factory/RemoveResponseHeaderWebFilterFactory.java index 8f38b4e8..a8a7a8c4 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/factory/RemoveResponseHeaderWebFilterFactory.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/factory/RemoveResponseHeaderWebFilterFactory.java @@ -39,8 +39,8 @@ public class RemoveResponseHeaderWebFilterFactory implements WebFilterFactory { public WebFilter apply(Tuple args) { final String header = args.getString(NAME_KEY); - return (exchange, chain) -> chain.filter(exchange).doFinally(v -> { + return (exchange, chain) -> chain.filter(exchange).then(Mono.fromRunnable(() -> { exchange.getResponse().getHeaders().remove(header); - }); + })); } }