gpt4 book ai didi

java - 利用 Apache HttpClient 的持久性?

转载 作者:可可西里 更新时间:2023-11-01 16:46:11 27 4
gpt4 key购买 nike

我的目标是连接到服务器,然后保持连接。只要有数据,服务器就会不断向我推送一些数据。我写了以下内容,但它只在第一次有效。从第二次开始,它给了我一个异常,说 get.getResponseBodyAsStream() 为空。我在想 Apache 的 HTTPClient 默认情况下保持连接有效,所以我的理解是我需要在某处进行阻塞调用。有人可以帮我吗?

        GetMethod get = new GetMethod(url);
String nextLine;
String responseBody = "";
BufferedReader input;

try {
httpClient.executeMethod(get);
while(true) {
try {
input = new BufferedReader(new InputStreamReader(get.getResponseBodyAsStream()));

while ((nextLine = input.readLine()) != null)
responseBody += nextLine;
System.out.println(responseBody);
} catch (IOException ex) {
ex.printStackTrace();
}
}
} catch (Exception e) {
e.printStackTrace();
}

实际上,在一天结束时,我正在尝试与服务器建立持久连接(我稍后会处理可能的错误),以便我可以继续从我的服务器接收更新。对此的任何指示都会很棒。

最佳答案

我没有仔细查看或测试过代码,但我认为反复向读者开放响应可能不是一个好主意。对于初学者,我会将 input = 行移到循环外。

关于java - 利用 Apache HttpClient 的持久性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3121760/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com