我正在尝试在Feign中使用新的HystrixFeign支持。这是我的代码看起来像
route66Client =
HystrixFeign.builder()
.logger(new Slf4jLogger())
.encoder(new GsonEncoder())
.target(Route66Client.class, "http://route66/");
Route66Client定义为
public interface Route66Client {
@RequestLine("POST /route")
ApiResponse getRoute(
RouteRequest request);
}
当我尝试运行代码时。我得到UnknownHostException。因为它无法解析route66的主机名。谁知道我可能会失踪?
此外,我使用常规Feign(不是HystrixFeign)。我所做的只是用@FeignClient(“...”)注释我的Route66Client类,然后在调用类中注入Route66Client(所以没有使用Feign.builder())
但是我找不到一些@HystrixFeignClient注释。所以我继续开始使用HystrixFeign.builder()。但是当我这样做时,serviceName->地址解析停止了工作。
答案 0 :(得分:1)
如果您想获得尤里卡的好处,请不要直接使用该构建器。将@EnableFeignClients
放在@Configuration
类(通常是您的应用程序)上。然后使用Route66Client
标记@FeignClient("route66")
并注入Route66Client
。这只适用于布里克斯顿的第二里程碑。请参阅the documentation。