概述范围请求允许客户端仅获取资源的一部分,用于断点续传、在线播放与多线程下载。服务器以 `206 Partial Content` 响应匹配的内容范围,或以 `416` 表示请求范围无效。请求与响应头客户端:`Range: bytes=start-end` 指定字节范围;可请求多个区间。服务器:`Accept-Ranges: bytes` 表示支持范围请求;响应携带 `Content-Range` 描述返回的区间与总长度[参考1,4]。条件范围:If-Range`If-Range` 让范围请求具备条件性:若验证器(`ETag` 或 `Last-Modified`)匹配则返回部分内容,否则返回完整资源(`200 OK`)。避免内容变化后错误续传[参考1,4]。错误与边界超出范围返回 `416 Requested Range Not Satisfiable`;客户端需回退为完整下载或调整区间[参考1,4]。与分块传输兼容,可独立或联合使用。参考与验证[参考1]MDN 中文:HTTP 范围请求与头/状态码说明:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Guides/Range_requests[参考2]博客:Range/If-Range/Content-Range/Accept-Ranges 的详解与示例:https://www.cnblogs.com/cangqinglang/p/12315703.html[参考3]博客:范围请求原理与断点续传/多线程下载实践:https://www.cnblogs.com/plokmju/p/http_range.html[参考4]MDN 英文:范围请求指南与示例:https://mdn.org.cn/en-US/docs/Web/HTTP/Range_requests[参考5]CSDN:范围请求与分块传输的兼容性与实现说明:https://blog.csdn.net/liuxiao723846/article/details/128665109关键词校验关键词覆盖 Range/206/If-Range 与断点续传,与正文一致。

发表评论 取消回复