java中HttpClient的错误处理方法
作者:慢热型
时间:2023-04-26
浏览:2
说明1、HttpClient异步请求返回CompletableFuture,其自带的exceptionally方法可用于fallback处理。2、HttpClient不像WebClient那样,它不会出现4xx或5xx的状态码异常,需要根据自己的情况进行处理,手动检测状态码异常或返回其他内容。实例@TestpublicvoidtestHandleException()throwsExecutionException,InterruptedException{HttpClientclient=HttpCli
说明
1、HttpClient异步请求返回CompletableFuture,其自带的exceptionally方法可用于fallback处理。
2、HttpClient不像WebClient那样,它不会出现4xx或5xx的状态码异常,需要根据自己的情况进行处理,手动检测状态码异常或返回其他内容。
实例
@Test
public void testHandleException() throws ExecutionException, InterruptedException {
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofMillis(5000))
.build();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://twitter.com"))
.build();
CompletableFuture result = client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
// .whenComplete((resp,err) -> {
// if(err != null){
// err.printStackTrace();
// }else{
// System.out.println(resp.body());
// System.out.println(resp.statusCode());
// }
// })
.thenApply(HttpResponse::body)
.exceptionally(err -> {
err.printStackTrace();
return "fallback";
});
System.out.println(result.get());
}
作者最新文章
win10笔记本外出联网如何阻止自动下载更新包
2026-10-06 11:33
photoshop智能对象不能直接编辑
2026-10-05 13:52
3dmax动画制作教程视频零基础入门步骤讲解
2026-09-23 12:06
CPU硅脂涂抹方法图解及正确操作步骤
2026-09-22 15:23
网易2026年Q2财报:营收301亿元,游戏收入增10%,三款重点新游披露进展
2026-09-08 17:51
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多










































