我有下面的代码来检查此错误,但我没有收到超时错误,提示它会转到其他情况
Response response = null;
try {
response = client.getResponse(URI.create(uri), headers, reuest);
} catch (Exception ex) {
if(ex instanceof SocketTimeoutException){
throw new ExternalClientException(Errors.TIMEOUT_ERROR);
} else {
throw new ExternalClientException(Errors.UNEXPECTED_ERROR);
}
}
答案 0 :(得分:0)
请发送课程的所有代码。您需要提供“客户”变量类,以便人们提供帮助。
还有一件事情,而不是在“ catch”子句中检查异常实例,您应该使用多次捕获,如下所示:
Response response = null;
try {
response = client.getResponse(URI.create(uri), headers, reuest);
} catch (SocketTimeoutException ex1) {
throw new ExternalClientException(Errors.TIMEOUT_ERROR, ex1);
} catch (Exception ex2) {
throw new ExternalClientException(Errors.UNEXPECTED_ERROR, ex2);
}
答案 1 :(得分:0)
您需要捕获feign.RetryableException
而不是SocketTimeoutException
。