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
Make a POC based on quic-go Webtransport pull request
Make sure Disconnect logic matches ours (i.e. WT can be closed with code and string reason)
Add StreamCommandDecoder which accepts io.Reader and exposes Commands
Modify DataEncoder to always append \n to JSON, for single WebSocket messages we have fast path which does not use DataEncoder – so for single messages \n won't be included into payload sent.
Expose handleCommand to Client's public API. Maybe remove Client.Handle and move command decoding to Transport.
With the base above introduce an example with NewWebtransportHandler and WebtransportConfig which uses quic-go for WT stuff.
An issue to track WebTransport support:
StreamCommandDecoderwhich acceptsio.Readerand exposesCommandsDataEncoderto always append\nto JSON, for single WebSocket messages we have fast path which does not useDataEncoder– so for single messages\nwon't be included into payload sent.handleCommandtoClient's public API. Maybe removeClient.Handleand move command decoding to Transport.NewWebtransportHandlerandWebtransportConfigwhich usesquic-gofor WT stuff.