From f11d6a5088d9816820dd2e1dab25b9cb5e8634fd Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Thu, 13 Jun 2019 16:36:14 -0400 Subject: [PATCH] Only add headers if response is not committed. --- .../cloud/gateway/test/BaseWebClientTests.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/BaseWebClientTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/BaseWebClientTests.java index 30573961..ff944508 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/BaseWebClientTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/BaseWebClientTests.java @@ -97,11 +97,15 @@ public class BaseWebClientTests { log.info("modifyResponseFilter start"); String value = exchange.getAttributeOrDefault(GATEWAY_HANDLER_MAPPER_ATTR, "N/A"); - exchange.getResponse().getHeaders().add(HANDLER_MAPPER_HEADER, value); + if (!exchange.getResponse().isCommitted()) { + exchange.getResponse().getHeaders().add(HANDLER_MAPPER_HEADER, value); + } Route route = exchange.getAttributeOrDefault(GATEWAY_ROUTE_ATTR, null); if (route != null) { - exchange.getResponse().getHeaders().add(ROUTE_ID_HEADER, - route.getId()); + if (!exchange.getResponse().isCommitted()) { + exchange.getResponse().getHeaders().add(ROUTE_ID_HEADER, + route.getId()); + } } return chain.filter(exchange); };