如何在不实际下载资源的情况下获取资源的大小?

时间:2015-02-13 04:55:30

标签: http curl network-programming

所以我现在正处于非常有限的带宽上,我点击了指向pdf教程的链接,Chrome开始下载它,我正在观看从5Kb以后的20Kb上升的大小并决定停下来。我怎么知道它不是4Gb pdf?荒谬,我知道。

但我开始思考,肯定必须有一种方法可以在下载之前简单地请求检查资源的大小。也许是某种cURL请求?

有人知道吗?

1 个答案:

答案 0 :(得分:1)

您可以尝试使用HTTP HEAD 方法。这应该可以获得没有正文的文档的标题。 可能包含内容长度。

或者您可以使用 GET 请求发送HTTP范围请求标头。请参阅本document中的第14.35.2节。范围标题如下所示:

  

范围:1-20000

将请求文档的前20,000字节(八位字节)。如果文档少于20,000字节,您将获得整个文档。

唯一的问题是服务器可能不支持Range标头,在这种情况下,它将发送200状态而不是206.在这种情况下,如果您不想冒带宽加扰的风险,您可以重置连接5Gb文档。

相关问题