【问题标题】:Limit accepted HTTP response size限制接受的 HTTP 响应大小
【发布时间】:2013-11-03 16:12:57
【问题描述】:

我有一个使用org.apache.commons.httpclient.HttpClient 类的代码,以便通过url 从网络下载图像。我想限制允许的下载大小。例如 - 不要下载超过 2MB 的图像。

在下载之前知道要下载的图像大小的最佳方法是什么?

【问题讨论】:

  • HTTP 响应包含正文的大小。但在某些情况下,它可能不存在(例如,即使服务器也不知道正在发送的文件的大小)。
  • @StefanoSanfilippo - 如果我在阅读正文之前阅读了内容长度,则表示正文尚未下载。对吗?

标签: java http get httpclient


【解决方案1】:

您可以通过在执行 HTTP GET 之前发送 HTTP HEAD 请求来获取没有正文的标头。

因此,您发送一个 HEAD 请求,通过解析 HEAD 响应获取主体大小(这是您通过 GET 请求获得的,除了没有主体,只有标头)并决定是否执行 GET 请求是否下载文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-11
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多