Arronlong / httpclientutil

该项目基于HttpClient-4.4.1封装的一个工具类。提供了更为简单的GET、POST及上传下载等功能。同时支持插件式配置Http-Header(包含自定义header)、配置SSL和Proxy等。
https://blog.csdn.net/xiaoxian8023/category_9264781.html
Apache License 2.0
1.41k stars 719 forks source link

第一次访问TLSv1.3的地址会报错,目前发现是打开了线程池的原因 #57

Open Archer4HDJ opened 2 years ago

Archer4HDJ commented 2 years ago

使用作者的demo复现的bug,下载代码后找到test下面的Demo类,注释掉 // //最简单的使用: // String html = HttpClientUtil.get(HttpConfig.custom().url(url).client(HCB.custom().sslpv(SSLProtocolVersion.TLSv1_2).ssl().build())); // System.out.println(html);

然后运行就会报错 Exception in thread "main" com.arronlong.httpclientutil.exception.HttpProcessException: javax.net.ssl.SSLException: Received fatal alert: protocol_version at com.arronlong.httpclientutil.HttpClientUtil.execute(HttpClientUtil.java:462) at com.arronlong.httpclientutil.HttpClientUtil.send(HttpClientUtil.java:377) at com.arronlong.httpclientutil.HttpClientUtil.get(HttpClientUtil.java:102) at com.arronlong.httpclientutil.test.Demo.main(Demo.java:77)

建议作者修复这个bug前,谨慎使用线程池功能

环境为jdk1.8

代码里没有关于TLSv1.3的枚举成语, SSLProtocolVersion SSL("SSL"), SSLv3("SSLv3"), TLSv1("TLSv1"), TLSv1_1("TLSv1.1"), TLSv1_2("TLSv1.2"),