fix(proxy): handle proxied socket.io websocket transport upgrade

Fixes websocket upgrade handling for proxied routes.
This was motivated by long (10s) default timeouts when socket.io
attempts to use websockets and fails to perform the upgrade.