使用 httplib2 限制响应大小

4 投票
1 回答
815 浏览
提问于 2025-04-16 08:05

可以用httplib2限制响应的大小吗?比如说,如果它发现HTTP的内容超过了X字节,连接就会直接关闭,这样就不会消耗更多的带宽。或者说,只下载文件的前X字节。

1 个回答

5

假设服务器在响应的头信息中发送了内容的大小,也就是在Content-Length这个字段里,你可以自己来处理这个问题。

首先,调用Http.request(method="HEAD"),这样你只会获取到头信息,而不会下载内容的主体。接着,查看响应中的Content-Length字段,看看它的大小是否在你设定的范围内。如果在范围内,就可以再发一次请求,使用GETPOST方法来获取内容;如果不在范围内,就返回一个错误。

如果服务器没有提供Content-Length(或者提供了错误的信息),那么似乎没有办法在下载到一定字节后停止下载。

撰写回答