You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fmt.Errorf("preparing request for upstream round-trip: %v", err))
411
411
}
412
-
// websocket over http2, assuming backend doesn't support this, the request will be modified to http1.1 upgrade
412
+
413
+
// websocket over http2 or http3 if extended connect is enabled, assuming backend doesn't support this, the request will be modified to http1.1 upgrade
414
+
// Both use the same upgrade mechanism: server advertizes extended connect support, and client sends the pseudo header :protocol in a CONNECT request
415
+
// The quic-go http3 implementation also puts :protocol in r.Proto for CONNECT requests (quic-go/http3/headers.go@70-72,185,203)
413
416
// TODO: once we can reliably detect backend support this, it can be removed for those backends
// websocket over http2, assuming backend doesn't support this, the request will be modified to http1.1 upgrade
97
+
// websocket over http2 or http3 if extended connect is enabled, assuming backend doesn't support this, the request will be modified to http1.1 upgrade
98
98
// TODO: once we can reliably detect backend support this, it can be removed for those backends
99
-
ifbody, ok:=caddyhttp.GetVar(req.Context(), "h2_websocket_body").(io.ReadCloser); ok {
99
+
ifbody, ok:=caddyhttp.GetVar(req.Context(), "extended_connect_websocket_body").(io.ReadCloser); ok {
0 commit comments