6 个版本

0.10.0 2024 年 4 月 6 日
0.3.2 2024 年 8 月 15 日
0.3.1 2024 年 7 月 25 日
0.3.0 2024 年 5 月 17 日
0.1.0 2024 年 4 月 6 日

#1425网络编程

Download history 66/week @ 2024-05-03 31/week @ 2024-05-10 212/week @ 2024-05-17 105/week @ 2024-05-24 78/week @ 2024-05-31 43/week @ 2024-06-07 54/week @ 2024-06-14 60/week @ 2024-06-21 40/week @ 2024-06-28 53/week @ 2024-07-05 40/week @ 2024-07-12 130/week @ 2024-07-19 107/week @ 2024-07-26 72/week @ 2024-08-02 134/week @ 2024-08-09 126/week @ 2024-08-16

每月 523 次下载
8 个包中使用 (直接使用 2 个)

MIT/Apache

110KB
2K SLoC

crates.io docs.rs discord

web-transport-quinn

Quinn API 的包装器,抽象了烦人的 HTTP/3 内部机制。提供类似 QUIC 的 API,但支持 Web!

示例

请参阅示例 服务器客户端

QUIC 需要 TLS,这使得初始设置变得稍微复杂一些。

  • 生成证书: ./cert/generate
  • 运行 Rust 服务器: cargo run --example echo-server -- --tls-cert cert/localhost.crt --tls-key cert/localhost.key
  • 运行 Web 客户端: cd web; npm install; npx parcel serve client.html --open

如果 Web 客户端出现证书错误,请尝试删除 .parcel-cache

Rust 客户端示例似乎已损坏。如果有人能修复它,那将非常棒: cargo run --example echo-client -- --tls-cert cert/localhost.crt

限制

此库不支持 HTTP/3 连池或多 WebTransport 会话。它的目的是类似于 QUIC API。

  • 如果您想在同一个主机/端口上支持 HTTP/3,应使用另一个包(例如 h3-webtransport)。
  • 如果您想在同一QUIC连接上支持多个WebTransport会话...您只需拨一个新的QUIC连接即可。

依赖项

~14–23MB
~444K SLoC