30

我有兴趣重用 HttpUrlConnection(作为我正在开发的服务器和客户端之间的全状态协议的一部分)。我知道持久 http 有一个 Connection=keep-alive 标头。现在,我想知道如何重用这样的连接。我写了这段代码:

URL u = new java.net.URL("http://localhost:8080/Abc/Def");
HttpURLConnection c = (HttpURLConnection) u.openConnection();
c.setRequestMethod("GET");
c.setRequestProperty("Connection", "keep-alive");
c.setHeader("A","B");
c.getInputStream() //here I see that server gets my messages (using DEBUG)
c.setHeader("B","C"); //

现在如何将这个“B”标头重新发送到服务器,我尝试重新连接等,但没有任何效果。

并且服务器也执行response.setHeader("Connection", "keep-alive");

我看过很多论坛,但没有人写过这个。也许HttpURLConnection不处理这个?

4

1 回答 1

48

你没有。你关闭这个并创建一个新的。它在幕后进行 TCP 连接池和保持活动。

于 2013-04-27T22:14:17.577 回答