HTTP/2 与 OkHttp

2024-01-06

我正在尝试使用 HTTP/2 服务器进行通信OkHttp http://square.github.io/okhttp/ client.

添加到 Maven POM:

<dependency>
  <groupId>com.squareup.okhttp3</groupId>
  <artifactId>okhttp</artifactId>
  <version>3.2.0</version>
</dependency>    

这是我的测试代码:

OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("https://http2.akamai.com/demo").build();
Response response = client.newCall(request).execute();
System.out.println("Protocol: " + response.protocol());
System.out.println(response.body().string());

但是当我运行它时它会打印:

协议:http/1.1

and

此浏览器未启用 HTTP/2。

环境:Linux 上的 OpenJDK 8。

您需要额外的东西吗?我看到了一个叫做“ALPN”的东西,但不太理解这个概念。


HTTP/2 需要 ALPN,但在 JDK 9 之前,它在桌面 Java 中不可用。在 Java 7 和 Java 8 中,您需要一个名为码头-阿尔卑斯山 http://www.eclipse.org/jetty/documentation/current/alpn-chapter.html来启用它。

(对于 Java 9,平台上有 ALPN,但仅限于即将推出的 OkHttp 3.3。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTTP/2 与 OkHttp 的相关文章

随机推荐

  • 为 UWP 构建 OpenCV

    我目前正在努力为 UWP 构建 OpenCV 我已经用谷歌搜索了很多并发现微软的 OpenCV Github 存储库 https github com Microsoft opencv tree vs2015 samples从技术上讲 这应
  • 如何在 swift 中声明一个可在 Objective C 中使用的常量

    如果我将 swift 常数声明为全局常数 like let a 123 but the a无法在以下位置找到目标c 怎么解决这个问题呢 SWIFT代码 public class MyClass NSObject public static
  • C++ HDF5 找不到 -lhdf5d

    情况 我想创建一个程序来读取一些内容 hdf5 file 我做了什么 没什么 但添加hdf5 lib到项目 Problem 我收到两个错误 当我尝试运行该程序时 cannot find lhdf5d error ld returned 1
  • SELECT 非规范化列到单独的记录中?

    我正在使用 SQL 一点 这样如果我在工作面试中被问到 我就不会完全不知道它 我的朋友最近在面试时被问到以下问题 他答不出来 我问了工作中熟悉 SQL 的人 他也不知道 你们能帮我回答这个问题 然后解释一下它是如何工作的吗 请 问题 数据库
  • “ccache”配置

    我有一个与 ccache 配置相关的问题 在我们的开发环境中 我们有数百个使用绝对路径构建对象的 make 文件 我想加快进程并使用 ccache 不幸的是 当从不同位置编译时 我可以看到缓存未命中 下面是一个例子 简化了源文件放置在不同目
  • Java 数据流编程 API? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在 JDBC 上执行这条 Oracle 语句

    我在使用 JDBC 准备好的语句执行以下操作时遇到问题 CREATE OR REPLACE TRIGGER Time trg BEFORE INSERT ON Time FOR EACH ROW BEGIN SELECT Time seq
  • 使用 Jackson 从字符串反序列化 LocalDateTime

    我正在尝试反序列化String to LocalDateTime与杰克逊 但它不起作用 我有一个带有 LocalDateTime 字段的数据类 Data public class Registration JsonFormat shape
  • 在 IDS4 和 ASP.NET Core 2.2 下使用 JwtToken 访问安全页面时出现 401 错误

    我通过添加以下行配置了 MVC 客户端 services AddAuthentication JwtBearerDefaults AuthenticationScheme AddJwtBearer 正如 某种程度上 预期的那样 错误消息是
  • 我可以使用 getopt 按特定顺序处理选项吗?

    我正在实现一个命令行工具 并且我需要能够处理一堆选项 某些选项完成后必须终止程序 例如我有选项a b和c 如果 a 和 b 在完成后终止 并且我发出命令 myprogram bca file 在这种情况下 有没有办法使用 getopt 给予
  • 大 O 与小 omega

    为什么 n 小于 O n 我知道什么是小欧米茄 例如 n log n 但我不明白为什么 n 小于 O n 大 Oh O 是上限 小 omega 是上限Tight下限 O g n f n 存在正常数 c 和 n0 使得 0 f n cg n
  • 如何在jmeter中对csv数据集配置的文件名文本进行参数化

    我将 csv 数据集配置中归档的文件名文本的值传递为 filename 该变量包含整个路径 并从另一个 csv 数据集配置中获取它 该配置直接存在于线程组和我所在的变量中传递到 if 控制器内部的 csv 数据集配置我无法将该值传递到文件名
  • 在 C# .net 中发送电子邮件

    我有以下代码来发送电子邮件 System Net Mail SmtpClient client new System Net Mail SmtpClient client Send email protected cdn cgi l ema
  • 使用 PHP 编写“if”条件语句有哪些不同方法?

    使用 PHP 编写 if 条件语句有哪些不同的方式 我知道以下示例 if test 1 else and if test 1 echo asdsa else echo sdaaa 有的是替代控制结构语法 http php net manua
  • 字符串字典:任何不符合协议“可解码”[重复]

    这个问题在这里已经有答案了 我正在尝试实现 Decodable 来解析 json 请求 但 json 请求在对象内部有一个字典 这是我的代码 struct myStruct Decodable let content String Any
  • iOS-将数组对象复制到另一个数组对象中

    我有一个小问题 我需要帮助 我想循环遍历一个多维数组 每次我找到一个键 ex name 等于 ex 的值 你好 我想将该数组对象复制到另一个数组中 我怎么做 您将这样做 NSArray newArray NSArray arrayWithA
  • C++20 中允许 east constexpr / constinit / consteval 吗?

    我在网上找到的大多数例子都更喜欢 西方风格 constexpr C 11 consteval and constinit C 20 consteval auto sqr int n return n n constexpr auto r s
  • 如何创建面积范围图

    我想创建area range chart如下所示link http jsfiddle net D4w7G 3 我想使用数据循环将数据添加到范围 应该是什么类型ranges创建图表 请建议 提前致谢 这是 JSFiddle 代码 HTML d
  • 如何通过 Azure Devops CI/CD 使用单臂模板部署多个逻辑应用程序?

    我有多个带有相应 ARM 模板的逻辑应用程序 现在 我想将不同的 ARM 模板合并到一个 ARM 模板中 并通过 AZURE DEVOPS 管道同时部署多个逻辑应用 对于您的场景 您需要首先更改 ARM 模板结构 例如 我想将4个ARM模板
  • HTTP/2 与 OkHttp

    我正在尝试使用 HTTP 2 服务器进行通信OkHttp http square github io okhttp client 添加到 Maven POM