Sembra che nginx non supporti bene le richieste Chunked. Ma sto cercando di ottenere una risposta più definitiva (e attuale). Ho un client che effettua una richiesta SOAP a un server da un client Java che imposta l'intestazione Transfer-Encoding: chunked
. Funziona tutto bene quando mi collego direttamente alla mia applicazione su Tomcat.Come effettuare una richiesta Chunked via nginx
Ma quando inserisco nginx tra di loro, le cose si spezzano.
Per aggiungere alcuni dettagli: Sto lavorando con CloudFoundry. Sto usando Micro Cloud Foundry per confermare che le cose funzionino come previsto in assenza di nginx. Ma il mio requisito è usare cloudfoundry.com, quindi non ho la possibilità di bypassare nginx lì.
This question and answer dice che questa è forse la mia unica soluzione: http://wiki.nginx.org/NginxHttpChunkinModule. Ma questa soluzione alternativa non è disponibile, dal momento che non posso modificare la configurazione su cloudfoundry.com.
This question sembra simile, ma in realtà copre il contrario di questo requisito. Copre le risposte bocciate piuttosto che le richieste chunked.
Quindi che ne dici di eventuali modifiche sul client per aggirare questo problema? È possibile inviare sia Transfer-Encoding: chunked
e Content-Length: 123
come intestazioni? Quest'area è nuova per me, ma da progetti come Apache HttpComponents sembra che uno possa impostare la lunghezza o il chunking ma non entrambi. Il punto di suddivisione in blocchi è che non è necessario conoscere la lunghezza all'avvio della richiesta. Posso dire al mio cliente di usare HTTP/1.0 e giocare bene con nginx senza chunking? Ci sono altre idee alternative che sto dimenticando?
È possibile inviare sia la codifica di trasferimento: Chunked e Content-Length: 123 come intestazioni? È comune? – mdahlman