ACK pour fragment
Utilisez l’ACK du paquet de fragments pour accuser réception de la demande de fragment du client.
reason-code reason-description
BITS-Packet-Type: Ack
BITS-Session-Id: {guid}
BITS-Received-Content-Range: range
BITS-Reply-URL: url
Content-Length: length
BITS-Error-Code: error-code
BITS-Error-Context: error-context
headers
-
Reason-Code
-
Remplacez Reason-Code par un code de raison HTTP. Le tableau suivant présente les codes de raison typiques d’une réponse à une demande de fragment . Pour obtenir la liste des codes de raison HTTP, consultez la RFC 2616.
Code de la raison Description 200 OK. La demande a abouti. 416 Plage-non-satisfaisante. Le client a envoyé un fragment dont la plage n’est pas contiguë au fragment précédent. -
raison-Description
-
Remplacez Reason-Description par la description HTTP associée au code de raison. Par exemple, affectez à Reason-Description la valeur OK si code de raison est 200.
-
BITS-Packet-type
-
Identifie ce paquet de réponse comme un paquet ACK.
-
BITS-received-content-Range
-
Décalage de base zéro à l’octet suivant que le serveur attend que le client envoie. Par exemple, si le fragment contenait la plage 128 212, vous affectez à Range la valeur 213.
-
ID de session BITS
-
GUID de chaîne qui identifie la session sur le client. Remplacez {GUID} par l’identificateur de session que le client a envoyé dans le paquet de requête de fragment . Si vous ne reconnaissez pas l’identificateur de session, définissez l’en-tête BITS-error-code sur BG _ E _ session _ _ introuvable.
-
BITS-reply-URL
-
Contient l’URL des données de réponse d’une tâche de chargement-réponse. Ajoutez cet en-tête dans la réponse du fragment final une fois le téléchargement terminé et que vous recevez une réponse de l’application serveur, le cas échéant.
Utilisez l’en-tête Content-Range de la demande de fragment pour déterminer si le téléchargement est terminé. Le chargement est terminé si le décalage de fin de la valeur de la plage est égal à la valeur de longueur totale moins un.
Le serveur BITS publie le fichier de téléchargement dans l’application serveur après avoir déterminé que le téléchargement est terminé. L’application serveur traite le fichier et génère la réponse. Le serveur BITS définit la valeur de BITS-reply-URL sur l’URL du fichier de réponse de l’application serveur.
-
Content-Length
-
Remplacez length par le nombre d’octets inclus dans le corps de la réponse. Content-Length est requis, même si le corps de la réponse n’inclut pas de contenu.
-
BITS-erreur-code
-
Remplacez error-code par un nombre hexadécimal qui représente une valeur HRESULT associée à une erreur côté serveur. N’incluez cet en-tête que si la raison-code n’est pas 200 ou 201.
-
BITS-erreur-contexte
-
Remplacez erreur-Context par un nombre hexadécimal qui représente le contexte dans lequel l’erreur s’est produite. Spécifiez le nombre hexadécimal du _ _ _ _ fichier distant de contexte d’erreur BG (0x5) si le serveur a généré l’erreur. Dans le cas contraire, spécifiez le nombre hexadécimal pour l' _ _ _ _ application distante du contexte d’erreur BG (0x7) si l’erreur a été générée par l’application dans laquelle le fichier de téléchargement est transmis. Incluez cet en-tête uniquement si le code de raison n’est pas 200 ou 201.
Remarques
Si la session est destinée à une tâche de chargement-réponse, il peut y avoir un délai avant que le client n’envoie l' accusé de réception final pour la réponse du fragment. La durée du délai dépend de la durée nécessaire à l’application serveur (l’application sur laquelle le serveur publie le fichier de chargement) pour générer la réponse.