java - 如何用okhttp关闭HTTP连接?

标签 java okhttp

如何告诉 OkHttp 在请求完成后应关闭与 HTTP 服务器的连接?

假设我使用以下代码向 google.com 发出请求

OkHttpClient cl = new OkHttpClient();
Request req = new Request.Builder()
              .url("http://www.google.com")
              .header("Connection", "close")
              .get()
              .build();
Response res = cl.newCall(req).execute();
System.out.println("Response message: " + res.message());
System.out.println("Reponse body: " + res.body().string());

通过使用“Connection: close”,我可以让远程服务器发送 FIN(如果不这样做,远程服务器就会挂起等待新请求)。尽管如此,在客户端不会产生 FIN,并且连接显然会在不确定的时间内保持半打开状态。

最佳答案

呃,这是 OkHttp 2.0.0-RC1 中的回归。 Fix正在接受审核。

关于java - 如何用okhttp关闭HTTP连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24071774/

相关文章:

java - Varargs Java 不明确调用

java - 骨骼动画工具编程

java - 使用 OkHttp 3 发送原始 POST 请求

android - Glide - 向请求添加 header

android - 如何发送 Multipart.Part Intent

java - 程序运行速度很慢,忽略Thread.sleep

java - 包含 springboot 和 thymeleaf 的列表

java - Kotlin 将注释作为参数传递给注释

Android OKHttp 和 Retrofit 返回 304 错误

java.lang.NoClassDefFoundError : okhttp3. OkHttpClient$Builder