当 Spring RestTemplate 抛出 org.springframework.web.client.HttpStatusCodeException
When Spring RestTemplate throws org.springframework.web.client.HttpStatusCodeException
org.springframework.web.client.RestTemplate 方法 exchance(..) 抛出 RestClientException,它是 org.springframework.web.client.HttpStatusCodeException 的父级,当 restTeamplte.exchange(...) 抛出此异常时可能出现的情况是什么?
我检查了 javadoc 并尝试在互联网上搜索它,但没有成功。
try {
final ResponseEntity<String> response = applicationApiTemplate.exchange(uri,
HttpMethod.GET, entity, String.class);
} catch(HttpStatusCodeException e) {
// when possibly i will get this error?
}
org.springframework.web.client.RestTemplate
class 的
exhange(...) 方法已添加到 spring-web 库的 3.1.0.RELEASE
中。
此方法抛出 RestClientException
,涵盖客户端 (4_xx) 和服务器 (5_xx) 端 http 代码错误。但是 RestClientException
不提供 getStatusCode(), getResponseAsString()
等...方法。
HttpsStatusCodeException
是 RestClientException
的 child,它做同样的事情,但使用 getStatusCode(), getResponseAsString()
等其他方法
HttpClientErrorException
child of HttpsStatusCodeException
并且只处理客户端错误 (4_xx) 而不是服务器错误。
HttpServerErrorException
child of HttpsStatusCodeException
并且只招待服务器错误 (5_xx) 而不是客户端错误
org.springframework.web.client.RestTemplate 方法 exchance(..) 抛出 RestClientException,它是 org.springframework.web.client.HttpStatusCodeException 的父级,当 restTeamplte.exchange(...) 抛出此异常时可能出现的情况是什么?
我检查了 javadoc 并尝试在互联网上搜索它,但没有成功。
try {
final ResponseEntity<String> response = applicationApiTemplate.exchange(uri,
HttpMethod.GET, entity, String.class);
} catch(HttpStatusCodeException e) {
// when possibly i will get this error?
}
org.springframework.web.client.RestTemplate
class 的
exhange(...) 方法已添加到 spring-web 库的 3.1.0.RELEASE
中。
此方法抛出 RestClientException
,涵盖客户端 (4_xx) 和服务器 (5_xx) 端 http 代码错误。但是 RestClientException
不提供 getStatusCode(), getResponseAsString()
等...方法。
HttpsStatusCodeException
是RestClientException
的 child,它做同样的事情,但使用getStatusCode(), getResponseAsString()
等其他方法HttpClientErrorException
child ofHttpsStatusCodeException
并且只处理客户端错误 (4_xx) 而不是服务器错误。HttpServerErrorException
child ofHttpsStatusCodeException
并且只招待服务器错误 (5_xx) 而不是客户端错误