gpt4 book ai didi

spring-boot - 如何管理 Feign 错误?

转载 作者:行者123 更新时间:2023-12-04 02:43:47 25 4
gpt4 key购买 nike

我们将 Spring-boot 与 Spring-cloud 和 Spring-cloud-netflix 与 Spring-cloud-feign 一起使用。

我们正在创建我们的网关应用程序,在 Feign 的帮助下会尽量与我们沟通authentication微服务以验证其凭据。在这里你可以看到我们 Feign 的一个例子 authentication客户:

@FeignClient(value="auth", configuration = AuthClientConfiguration.class)

public interface AuthClient {
@RequestMapping(method = RequestMethod.GET, value = "/tokens", consumes = MediaType.APPLICATION_JSON_VALUE)
Single<Session> getSession(@RequestHeader("Authorization") String token);
}

问题是,我们如何处理客户可能提出的所有异常?我的意思是,例如,我们如何才能捕捉到 NetworkExceptionTimeoutException被扔了?我们已经定义了我们自己的 ErrorDecoder但似乎这种“监听器”仅在请求到达并返回响应时才起作用(在我们的例子中来自 authentication 客户端)。那么,我们如何管理这些其他异常呢?

最好的事物,

最佳答案

错误解码器正在解码 HTTP 错误响应(500、404、401 等)。异常会在客户端调用中冒泡,所以使用 try/catch应该管用。

    try {
return client.home();
} catch (RuntimeException e) {
e.printStackTrace();
throw e;
}

关于spring-boot - 如何管理 Feign 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41767740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com