【发布时间】:2013-12-03 01:46:37
【问题描述】:
是否可以将 HTTP POST 请求发送到网络服务器并仅检索响应的标头或仅读取正文的几个字节,因此根本不会下载其余部分(因此不会消耗流量)?如果是,怎么做?
我知道有一个 HEAD 方法,但是我需要通过 POST 方法来实现它。好吧,我不确定是否需要 POST 方法,我只需要发布数据。也许如果网络服务器的安全性不够好(它不检查它使用的方法 - 它只是直接访问发布数据),是否可以通过 HEAD 请求发送“发布数据”?
【问题讨论】:
-
您可以直接发送POST方法,并使用您的java客户端仅读取标题内容。如果您不触摸响应正文,则不会下载。
-
根据我的流量记录,即使我不碰身体也会被下载。例如当我只想检查一些标头值(HttpURLConnection.getHeaderField()、URLConnection.getContentLength() ...)时,它会下载完整响应
-
我认为如果您尽快阅读您的响应标头,然后在阅读后立即关闭您的响应。您的回复内容不会完全下载。当然,您的客户会在您关闭回复之前尝试尽可能多地下载。但是如果你的内容足够大,这种方式应该可以节省你的带宽。
-
在 Java 中这怎么可能?