Fragment

使用 片段 数据包将上传文件的片段发送到服务器。

BITS_POST remote-URL HTTP/1.1
BITS-Packet-Type: Fragment
BITS-Session-Id: {guid}
Content-Name: filename
Content-Length: length
Content-Range: Bytes range/total-length
Content-Encoding: encoding

标头

BITS_POST

特定于 BITS 的谓词,用于向 BITS 服务器标识此数据包。

将 remote-URL 替换为绝对 URI 或相对 URI。 通常,将 remote-URL 替换为作业的远程文件名。 有关网络负载均衡注意事项,请参阅 Create-Session 数据包中的 BITS-Host-Id 标头。

BITS-Packet-type

将此请求数据包标识为片段数据包。

BITS-Session-Id

标识与服务器的会话的字符串 GUID。 将 {guid} 替换为服务器 在 Create-Session 响应数据包的 Ack 中返回的会话标识符。

Content-Name

仅使用初始片段指定此标头。 将 filename 替换为作业中本地文件名的名称。 该名称不包括路径。

Content-Length

将 length 替换为在片段正文中发送的字节数。

Content-Range

告知服务器在目标文件中应用范围的位置。 将 range 替换为目标文件中范围的开始和结束偏移量。 偏移量从零开始。 如果给定的范围与现有范围重叠,则 BITS 仅写入该区域的非重叠部分;BITS 不会覆盖现有内容。 例如,如果第一个数据包包含范围 0 到 100,第二个数据包包含范围 50 到 150,则 BITS 只写入第二个数据包的字节 101 到 150。 将 total-length 替换为文件中的总字节数。

Content-Encoding

将编码替换为客户端在片段上使用的编码类型。 客户端必须使用服务器在 Create-Session 响应数据包的 Ack Accept-Encoding 标头中标识的编码。 服务器使用编码类型来解码片段。 所有片段必须指定相同的编码。

如果编码类型为 Identity,则不要发送此标头。 BITS 服务器仅支持标识编码。

备注

片段是数据包正文中发送的字节范围。 客户端按从偏移量零开始的顺序发送片段;服务器不跟踪非连续范围。 如果客户端发送非连续范围,服务器将在 Ack for Fragment 响应中返回 HTTP 416 (范围不满足) 返回代码。

Content-xxxx 标头是标准 HTTP 1.1 标头。 有关 Content-xxxx 标头的更多详细信息,请参阅 RFC 2616 规范。

另请参阅

片段的确认

关闭会话

创建会话