Spring Boot 响应体无效时如何使用 RestTemplate 客户端进行 GET 请求?
How to use RestTemplate client for GET request when response body is void in Spring Boot?
我在 Java 和 Spring 引导项目中使用 RestTemplate 客户端,当我收到来自服务器的响应正文时,我有以下代码:
private RestTemplate oauth2RestTemplate;
private ParameterizedTypeReference<List<Employee>> parameterizedTypeReference;
....
ResponseEntity<List<Employee>> rtGetResponse = oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, parameterizedTypeReference);
所以在这种情况下,我会收到一份员工名单。
现在我想使用这个方法,但是来自服务器的响应主体是 void
,我想使用交换方法,但我不知道用什么代替 parameterizedTypeReference,因为响应是无效的.所以我没有响应主体,我只想捕获异常。
这样做可以吗?
try {
oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, null);
} catch (HttpStatusCodeException e) {
switch (e.getStatusCode()) {
case BAD_REQUEST:
throw new BadRequestException(e);
case NOT_FOUND:
throw new NotFoundException(e);
...
}
}
您可以使用 Void
class
try {
oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, Void.class);
} catch (HttpStatusCodeException e) {
switch (e.getStatusCode()) {
case BAD_REQUEST:
throw new BadRequestException(e);
case NOT_FOUND:
throw new NotFoundException(e);
...
}
}
我在 Java 和 Spring 引导项目中使用 RestTemplate 客户端,当我收到来自服务器的响应正文时,我有以下代码:
private RestTemplate oauth2RestTemplate;
private ParameterizedTypeReference<List<Employee>> parameterizedTypeReference;
....
ResponseEntity<List<Employee>> rtGetResponse = oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, parameterizedTypeReference);
所以在这种情况下,我会收到一份员工名单。
现在我想使用这个方法,但是来自服务器的响应主体是 void
,我想使用交换方法,但我不知道用什么代替 parameterizedTypeReference,因为响应是无效的.所以我没有响应主体,我只想捕获异常。
这样做可以吗?
try {
oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, null);
} catch (HttpStatusCodeException e) {
switch (e.getStatusCode()) {
case BAD_REQUEST:
throw new BadRequestException(e);
case NOT_FOUND:
throw new NotFoundException(e);
...
}
}
您可以使用 Void
class
try {
oauth2RestTemplate.exchange(uriComponents.toUri(), HttpMethod.GET, httpEntity, Void.class);
} catch (HttpStatusCodeException e) {
switch (e.getStatusCode()) {
case BAD_REQUEST:
throw new BadRequestException(e);
case NOT_FOUND:
throw new NotFoundException(e);
...
}
}