Condividi tramite


Ack for Fragment

Usare il pacchetto Ack for Fragment per riconoscere la richiesta Frammento del 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

Intestazioni

reason-code

Sostituire il codice motivo con un codice motivo HTTP. Nella tabella seguente vengono illustrati i codici motivo tipici per una risposta a una richiesta Fragment . Per un elenco di codici motivo HTTP, vedere RFC 2616.

Codice motivo Descrizione
200
OK. La richiesta è stata completata.
416
Range-Not-Satisfiable. Il client ha inviato un frammento il cui intervallo non è contiguo con il frammento precedente.

reason-description

Sostituire la descrizione motivo con la descrizione HTTP associata al codice motivo. Impostare ad esempio la descrizione motivo su OK se il codice motivo è 200.

BITS-Packet-Type

Identifica questo pacchetto di risposta come pacchetto Ack.

BITS-Received-Content-Range

Offset in base zero al byte successivo, il server prevede l'invio del client. Ad esempio, se il frammento contiene l'intervallo 128 212, si imposta l'intervallo su 213.

BITS-Session-ID

GUID stringa che identifica la sessione al client. Sostituire {guid} con l'identificatore di sessione inviato dal client nel pacchetto di richiesta Frammento . Se non si riconosce l'identificatore della sessione, impostare l'intestazione BITS-Error-Code su BG_E_SESSION_NOT_FOUND.

BITS-Reply-URL

Contiene l'URL per i dati di risposta di un processo di caricamento di risposta. Includere questa intestazione nella risposta finale del frammento dopo il caricamento e ricevere una risposta dall'applicazione server, se applicabile.

Usare l'intestazione Content-Range dalla richiesta Frammento per determinare se il caricamento è stato completato. Il caricamento viene completato se l'offset finale del valore dell'intervallo è uguale al valore di lunghezza totale meno uno.

Il server BITS pubblica il file di caricamento nell'applicazione server dopo il completamento del caricamento. L'applicazione server elabora il file e genera la risposta. Il server BITS imposta il valore di BITS-Reply-URL sull'URL del file di risposta dall'applicazione server.

Lunghezza contenuto

Sostituire la lunghezza con il numero di byte inclusi nel corpo della risposta. La lunghezza del contenuto è necessaria, anche se il corpo della risposta non include contenuto.

BITS-Error-Code

Sostituire il codice di errore con un numero esadecimale che rappresenta un valore HRESULT associato a un errore lato server. Includere questa intestazione solo se il codice motivo non è 200 o 201.

BITS-Error-Context

Sostituire il contesto di errore con un numero esadecimale che rappresenta il contesto in cui si è verificato l'errore. Specificare il numero esadecimale per BG_ERROR_CONTEXT_REMOTE_FILE (0x5 ) se il server ha generato l'errore. In caso contrario, specificare il numero esadecimale per BG_ERROR_CONTEXT_REMOTE_APPLICATION (0x7 ) se l'errore è stato generato dall'applicazione a cui viene passato il file di caricamento. Includere questa intestazione solo se il codice motivo non è 200 o 201.

Commenti

Se la sessione è per un processo di caricamento di risposta, potrebbe verificarsi un ritardo prima che il client riceva la risposta finale Ack for Fragment . La lunghezza del ritardo dipende dalla quantità di tempo impiegato dall'applicazione server (applicazione a cui il server pubblica il file di caricamento) per generare la risposta.

Vedi anche

Create-Session

Frammento