3 unstable releases
0.10.0 |
|
---|---|
0.2.1 | Apr 30, 2024 |
0.2.0 | Apr 26, 2024 |
0.1.0 | Apr 6, 2024 |
#1013 in Network programming
546 downloads per month
Used in 7 crates
(5 directly)
110KB
2K
SLoC
web-transport-quinn
Example
See the example server and client.
QUIC requires TLS, which makes the initial setup a bit more involved.
- Generate a certificate:
./cert/generate
- Run the Rust server:
cargo run --example echo-server -- --tls-cert cert/localhost.crt --tls-key cert/localhost.key
- Run a Web client:
cd web; npm install; npx parcel serve client.html --open
If you get a certificate error with the web client, try deleting .parcel-cache
.
The Rust client example seems to be broken.
It would be amazing if somebody could fix it: cargo run --example echo-client -- --tls-cert cert/localhost.crt
Limitations
This library doesn't support pooling HTTP/3 or multiple WebTransport sessions. It's means to be analogous to the QUIC API.
- If you want to support HTTP/3 on the same host/port, you should use another crate (ex.
h3-webtransport
). - If you want to support multiple WebTransport sessions over the same QUIC connection... you should just dial a new QUIC connection instead.
Dependencies
~7–17MB
~229K SLoC