我々は春クラウドと春クラウドNetflixのを春クラウド装うとで春ブーツを使用しています。Feignのエラーを管理するには?
Feign
の助けを借りて、資格情報を検証するためにauthentication
マイクロサービスと通信しようとするゲートウェイアプリケーションを作成しています。ここでは、私たちの装う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);
}
、どのように我々は、クライアントが提起することができ、すべての例外に対処することができている質問?つまり、NetworkException
またはTimeoutException
がスローされたことをどのように把握できますか?我々は独自のErrorDecoder
を定義しましたが、この「リスナーの種類」はリクエストが到着して応答が返されたときにのみ機能します(このケースではauthentication
クライアントから)。では、この他の例外をどのように管理できますか?
ベスト、
キャッチするより具体的な例外はありませんか? – francescou
ありがとう@spencergibb。それはうまくいきました。ポイントは、そのコードを再利用するためには、それを含めなければならないということです。私たちがやったことは、デコレータとして機能する新しいクラスを作成した後、タイムアウトなどの「一般的な」例外をすべて管理します。 –