我是靠谱客的博主 仁爱煎蛋,最近开发中收集的这篇文章主要介绍java10 api使用,Java10基于Java API编写HTTP2客户端详解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

首先,基于Java API的HTTP2客户端,至少要使用Java 9,主要是基于其中的jdk.incubator.httpclient模块。Java 10中的相关部分没有变化。Java 11中已经正式发布到java.net.http模块。

jdk.incubator.httpclient模块主要提供了如下API:

HttpClient类

HttpRequest类

HttpResponse类

WebSocket接口

这里我们重点关注HTTP相关的类的用法。

其次,要使用Java 10,需要下载2018年发布的Eclipse IDE Photon版本。当然,如果使用Java 9只要2017年发布的Eclipse IDE Oxygen版本。

1. 创建Java项目

9e2498e2922e7c7eb8c4d8e0e562a57c.png

注意其中勾选“Create module-info.java file”。由于从Java 9开始,JDK采用模块化链接运行,所以任何项目都以Java模块的方式出现。

点击“Finish”即提示输入“模块名”,默认为项目名。

创建完成后的Java项目(事实上就是一个Java模块),在src的根目录下就有module-info.java文件。打开该文件,添加对jdk.incubator.httpclient模块的依赖,编辑如下:

module com.mycompany.mymodule.http2 {

requires jdk.incubator.httpclient;

}

2. 创建HTTP2的客户端类

这里的操作跟传统用法一样。

2.1 使用默认参数创建HttpClient对象

//Create a HttpClient with default settings.

HttpClient client = HttpClient.newHttpClient();

2.2 使用HttpClient.newBuilder()创建定制的HttpClient对象

HttpClient client = HttpClient

.newBuilder()

.version(HttpClient.Version.HTTP_2)

.priority(0)

.sslContext(SSLContext.getInstance("TLSv1.2"))

.build();

2.3 HTTP GET请求

HttpRequest httpRequest = HttpRequest

.newBuilder()

.uri(new URI("https://www.mydomain.com/"))

.headers("myKey1", "myValue1", "myKey2", "myValue2")

.GET()

.build();

2.4 HTTP POST请求

HttpRequest httpRequest = HttpRequest

.newBuilder()

.uri(new URI("https://www.mydomain.com/"))

.headers("myKey", "myValue")

.POST(BodyPublisher.fromString("Hello world"))

.build();

2.5 发送同步请求

HttpResponse httpResponse = client.send(httpRequest, HttpResponse.BodyHandler.asString());

2.6 发送异步请求

CompletableFuture> httpResponse = client.sendAsync(httpRequest, HttpResponse.BodyHandler.asString());

参考链接:

https://www.eclipse.org/downloads/packages/all

https://docs.oracle.com/javase/10/docs/api/jdk/incubator/http/package-summary.html

https://docs.oracle.com/javase/10/docs/specs/security/standard-names.html#sslcontext-algorithms

最后

以上就是仁爱煎蛋为你收集整理的java10 api使用,Java10基于Java API编写HTTP2客户端详解的全部内容,希望文章能够帮你解决java10 api使用,Java10基于Java API编写HTTP2客户端详解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部