akka/akka-http
Special handling of Expect: 100-Continue may not be appropriate in a proxy
Aperta
#514 aperta il 11 nov 2016
1 - triagedhelp wanted
Metriche repository
- Star
- (1311 stelle)
- Metriche merge PR
- (Merge medio 1g 10h) (2 PR mergiate in 30 g)
Descrizione
I'm using Akka HTTP (3.0.0-RC1) to create a reverse-http-proxy. The special handling of Expect: 100-Continue looks like it's causing weirdness in this case. In wireshark, here's what I see:
Proxy -> RSP: 100 Continue -> Client
Client -> REQ -> Proxy
Server -> RSP: 100 Continue -> Proxy
Proxy -> REQ -> Server
Server -> 200 -> Proxy
Proxy -> 200 -> Client
In the production logs (not in an attempt at a clean room reproduction) we see a number of these messages:
Sending an 2xx 'early' response before end of request was received...
It's not 100% clear that these are related to the special handling of 100, but they do seem to coincide a lot.
It feels like the special handling should be avoided when akka-http is operating as a proxy, leaving the handling logic up to the server to which we're proxying.