HttpClient API
HttpClient API是在2018年9月发布的Java 11中引入的。但是,它早在Java 9的前一年就已经可以作为预览功能使用。因为API需要一段时间的打磨才能变得成熟和完善。所以,从Java 11开始,HttpClient API是Java标准库的一部分。这意味着你不需要再向应用程序添加任何外部依赖关系即可使用此API。 HttpClient API替代了在Java标准库中存在了很长时间的HttpURLConnection API。稍后,看我心情要不要说一下为什么需要替换此API。与HttpURLConnection一样,新的HttpClient API支持HTTP 2和WebSocket通信。而且它还支持HTTP的早期版本。 HttpClient API的另一个重要功能是,它提供了同步阻塞和异步非阻塞的方法来执行HTTP请求。HttpClient API的设计目标是在常见情况下易于使用,但是在复杂情况下也具有足够的功能。
HttpClient
HttpClient API提供了三个重要的类型。所有这些类型都存在于java.net.http包中。首先,有HttpClient类本身。其中包含两个重要的方法:
- send->send方法执行对服务器的同步和阻塞调用。
- sendAsync->sendAsync方法执行异步的非阻塞调用。
你不能直接实例化HttpClient