Skip to content

Latest commit

 

History

History

webtransport-quinn

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Documentation Crates.io License: MIT

webtransport-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.