HttpWebRequest AddRange 方法查询
本文关键字:查询 方法 AddRange HttpWebRequest | 更新日期: 2023-09-27 18:31:55
在 HttpWebRequest AddRange 方法中,我们可以指定要下载的字节范围。我想知道的是如何指定从某个偏移量到文件末尾的范围。
就像如果我们不知道文件的长度,我们可以在请求标头字符串中指定
"范围:字节 = 0 - "这意味着,从第一个字节开始到文件末尾。
但是使用方法AddRange,如何使用EOF的一个偏移值来指定它?
我知道我可以获取内容长度并像这样指定,AddRange(0,ContentLength)。但我问是否有任何方法可以使内容从某个"偏移"值达到 EOF。
对 AddRange 方法使用正值来获取从偏移量到实体末尾的字节;
request.AddRange(10)
告诉服务器返回除前 10 个字节之外的所有字节。
您可以使用负值,这是终点;
request.AddRange(-10)
告知服务器返回字节 0 到 10。
您只需要使用不同于 0 的起始值调用 AddRange 方法。
像这样:
myHttpWebRequest.AddRange(50,ContentLength);
根据范围规范,
如果最后一个字节位置值不存在,或者该值大于 或等于实体主体的当前长度,最后一个字节位置为 取为等于比实体的当前长度少 1- 正文(以字节为单位)。
换句话说,您的Range: bytes = 0 -
应该起作用。事实上,HttpWebRequest
有一个方法,AddRange(Int32),它完全符合你的要求。