diff --git a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignBlockingLoadBalancerClient.java b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignBlockingLoadBalancerClient.java index e0fe6e1e..6bf5f57d 100644 --- a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignBlockingLoadBalancerClient.java +++ b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/FeignBlockingLoadBalancerClient.java @@ -110,8 +110,9 @@ public class FeignBlockingLoadBalancerClient implements Client { } String reconstructedUrl = loadBalancerClient.reconstructURI(instance, originalUri).toString(); Request newRequest = buildRequest(request, reconstructedUrl); + LoadBalancerProperties loadBalancerProperties = loadBalancerClientFactory.getProperties(serviceId); return executeWithLoadBalancerLifecycleProcessing(delegate, options, newRequest, lbRequest, lbResponse, - supportedLifecycleProcessors); + supportedLifecycleProcessors, loadBalancerProperties.isUseRawStatusCodeInResponseData()); } protected Request buildRequest(Request request, String reconstructedUrl) { diff --git a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/RetryableFeignBlockingLoadBalancerClient.java b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/RetryableFeignBlockingLoadBalancerClient.java index f9c3a7c5..c38a7532 100644 --- a/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/RetryableFeignBlockingLoadBalancerClient.java +++ b/spring-cloud-openfeign-core/src/main/java/org/springframework/cloud/openfeign/loadbalancer/RetryableFeignBlockingLoadBalancerClient.java @@ -163,9 +163,10 @@ public class RetryableFeignBlockingLoadBalancerClient implements Client { } org.springframework.cloud.client.loadbalancer.Response lbResponse = new DefaultResponse( retrievedServiceInstance); + LoadBalancerProperties loadBalancerProperties = loadBalancerClientFactory.getProperties(serviceId); Response response = LoadBalancerUtils.executeWithLoadBalancerLifecycleProcessing(delegate, options, - feignRequest, lbRequest, lbResponse, supportedLifecycleProcessors, - retrievedServiceInstance != null); + feignRequest, lbRequest, lbResponse, supportedLifecycleProcessors, retrievedServiceInstance != null, + loadBalancerProperties.isUseRawStatusCodeInResponseData()); int responseStatus = response.status(); if (retryPolicy != null && retryPolicy.retryableStatusCode(responseStatus)) { if (LOG.isDebugEnabled()) {