Experimental HTTP/3 via uWS::H3App
- Adds experimental uWS::H3App and example. With this type of app you can handle HTTP/3 requests with the same identical interface as for uWS::SSLApp, uWS::App. No code changes needed.
- This support is hidden under WITH_QUIC flag and entirely unsupported / for testing feedback / smoke testing only.
- Benchmarks are here.
- Working example is here.
How to test it
- This is experimental work entirely hidden under the WITH_QUIC make flag and disabled by default.
- Compile with
WITH_BORINGSSL=1 WITH_QUIC=1 make
and run the Http3Server binary. You can test it using quiche-client over IPv6 (you will need an IPv6 localhost address or else it will fail to listen). See Http3Server.cpp for an example quiche-client invocation. - You first need to compile both lsquic and boringssl in respective git submodule paths. See their documentation for how to do this (it's pretty easy).