Partager via


Fragment

Utilisez le paquet Fragment pour envoyer un fragment du fichier de chargement au serveur.

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

En-têtes

BITS_POST

Verbe propre à BITS qui identifie ce paquet au serveur BITS.

Remplacez remote-URL par l’URI absolu ou relatif. En règle générale, remplacez remote-URL par le nom de fichier distant du travail. Pour plus d’informations sur l’équilibrage de charge réseau, consultez l’en-tête BITS-Host-Id dans le paquet Create-Session .

BITS-Packet-Type

Identifie ce paquet de requête en tant que paquet fragment.

BITS-Session-Id

GUID de chaîne qui identifie la session sur le serveur. Remplacez {guid} par l’identificateur de session que le serveur retourne dans le paquet de réponse Ack for Create-Session .

Content-Name

Spécifiez cet en-tête uniquement avec le fragment initial. Remplacez filename par le nom du fichier local du travail. Le nom n’inclut pas le chemin d’accès.

Longueur du contenu

Remplacez length par le nombre d’octets envoyés dans le corps du fragment.

Content-Range

Indique au serveur où appliquer la plage dans le fichier de destination. Remplacez range par les décalages de début et de fin de la plage dans le fichier de destination. Les décalages sont de base zéro. Si la plage donnée chevauche une plage existante, BITS écrit uniquement la partie qui ne se chevauche pas de la plage ; BITS ne remplace pas le contenu existant. Par exemple, si le premier paquet contenait la plage 0 à 100 et le deuxième paquet contenait la plage 50 à 150, BITS écrit uniquement les octets 101 à 150 à partir du deuxième paquet. Remplacez longueur totale par le nombre total d’octets dans le fichier.

Encodage de contenu

Remplacez l’encodage par le type d’encodage utilisé par le client sur le fragment. Le client doit utiliser l’encodage que le serveur identifie dans l’en-tête Accept-Encoding du paquet de réponse Ack for Create-Session . Le serveur utilise le type d’encodage pour décoder le fragment. Tous les fragments doivent spécifier le même encodage.

N’envoyez pas cet en-tête si le type d’encodage est Identity. Le serveur BITS prend uniquement en charge l’encodage d’identité.

Notes

Le fragment est une plage d’octets envoyés dans le corps du paquet. Le client envoie les fragments dans l’ordre séquentiel en commençant par le décalage zéro ; le serveur ne suit pas les plages non contiguës. Si le client envoie des plages non contiguës, le serveur retourne un code de retour HTTP 416 (range-not-satisfifiable) dans la réponse Ack for Fragment .

Les en-têtes Content-xxxx sont des en-têtes HTTP 1.1 standard. Pour plus d’informations sur les en-têtes Content-xxxx , consultez la spécification RFC 2616 .

Voir aussi

Ack for Fragment

Fermer la session

Créer une session