openfeign 请求异常

发布时间 2023-03-25 17:46:41作者: java渣渣

在 OpenFeign 中,如果发生请求异常,是不会走到 Decoder 的。Decoder 主要是用于将 HTTP 响应体转换为 Java 对象的,只有在请求成功并且返回了正确的 HTTP 响应体时才会被调用。

当发生请求异常时,OpenFeign 会尝试将 HTTP 响应转换为 FeignException 异常对象,并将该异常对象抛出。FeignException 包含了请求的相关信息,例如请求 URL、请求方法、请求头、请求体等,以及 HTTP 响应码和响应头信息等。

在捕获 FeignException 异常时,可以通过异常对象的方法获取请求和响应的相关信息,并进行相应的处理。例如,可以根据 HTTP 响应码判断请求是否成功,或者根据 HTTP 响应体的内容解析出具体的错误信息。

需要注意的是,如果请求异常是由于网络或服务端问题导致的,那么 HTTP 响应体可能为空或不完整,此时可能无法从响应体中获取到有用的信息。在这种情况下,可以根据异常对象的其他属性,例如 HTTP 响应码、响应头等信息进行判断和处理。