fix:use path parameter in `@FeignClient` for circuit-breaker.

pull/1028/head
Haotian Zhang 2 years ago
parent ead0a6ea6d
commit e4e5ba7f60

@ -27,6 +27,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.cloud.openfeign.CircuitBreakerNameResolver; import org.springframework.cloud.openfeign.CircuitBreakerNameResolver;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import static org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotation; import static org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotation;
@ -46,15 +47,17 @@ public class PolarisCircuitBreakerNameResolver implements CircuitBreakerNameReso
String path = ""; String path = "";
// Get path in @FeignClient. // Get path in @FeignClient.
URI uri = null; if (StringUtils.hasText(target.url())) {
try { URI uri = null;
uri = new URI(target.url()); try {
} uri = new URI(target.url());
catch (URISyntaxException e) { }
LOG.warn("Generate URI from url({}) in @FeignClient. failed.", target.url()); catch (URISyntaxException e) {
} LOG.warn("Generate URI from url({}) in @FeignClient. failed.", target.url());
if (uri != null) { }
path += uri.getPath(); if (uri != null) {
path += uri.getPath();
}
} }
// Get path in @RequestMapping. // Get path in @RequestMapping.

Loading…
Cancel
Save