2013-02-07 17 views
30

Attualmente sto cercando di ottimizzare il trasferimento dei dati basato su http tra diverse applicazioni. Il nostro approccio attuale, il download prima e la creazione della post-richiesta, ovviamente aggiungono un extra carico di I/memoria e latenze, che vorrei aggirare.POST HTTP: richiesta l'intestazione della lunghezza del contenuto?

La questione centrale di tutti:

E 'richiesto l'invio di un "Content-Length" header nelle richieste HTTP POST? IIRC, HTTP 2616 dichiara che è facoltativo, ma non sono sicuro di come le applicazioni si comportino effettivamente a questo punto.

+0

Per chi interviene, vedi http://stackoverflow.com/q/15991173/632951 – Pacerier

risposta

19

Dipende cosa intendi per facoltativo. Se intendi che puoi semplicemente omettere l'intestazione quando vuoi, allora no, non è opzionale. Le specifiche HTTP hanno regole molto specifiche quando usare quell'intestazione. Ci sono diversi modi di inviare i dati se non si conosce la lunghezza. Codifica Chunked per esempio.

4.4 Message Length

+5

In breve, per il POST richiede uno dei 'content-length' o' Transfer-Encoding: intestazioni chunked' dovrebbero essere presente. – Salar

Problemi correlati