我正面临着一个场景,我们正在使用一个使用HttpURLConnection对同一主机执行多个请求的库。 对于其中一些请求(非全部!)我需要禁用keep-alive,以便在发送请求后不再重用连接。 我的第一个赌注是配置以便发送以下标头:
Connection: close
但是这个标题确实没有改变HttpURLConnection的行为。相反,这会导致问题,因为:
根据官方文件:http://docs.oracle.com/javase/7/docs/technotes/guides/net/http-keepalive.html 有一个系统属性" http.keepAlive"但这是全球性的,不符合我的要求。 同样根据上面我们可能根本就没有读取响应体,从而导致连接被废弃,但是我们需要读取响应,这种方式也是不可行的。
任何标头/属性/我们可以使用什么来强制JVM HttpURLConnection在将它用于单个请求 - 响应后关闭连接?