4个版本
0.5.0 | 2020年12月24日 |
---|---|
0.3.5 | 2020年6月28日 |
0.3.4 | 2020年4月30日 |
0.3.3 | 2020年3月1日 |
在 WebSocket 中排名 303
每月下载量 108
在 webwire 中使用
48KB
977 行
websocket-lite
此仓库包含三个crate
- websocket-lite,一个快速、低开销的异步WebSocket客户端
- websocket-codec,WebSocket协议的Tokio编解码器实现
- hyper-websocket-lite,hyper服务器和websocket-codec之间的绑定
websocket-lite
此crate针对长时间接收大量消息进行了优化。一个关键特性是,一旦建立连接并发送和接收了初始消息,它就不会进行内存分配;它重用一对缓冲区,大小为迄今为止最长的消息。
此crate提供同步和异步,基于tokio的功能。`ssl-native-tls`、`ssl-rustls-native-roots`和`ssl-rustls-webpki-roots`功能标志为`wss://...`服务器提供TLS功能。
此crate完全符合Autobahn测试套件中的fuzzingserver模块。
websocket-codec
这是一个独立的crate,不直接执行任何I/O。对于完整的WebSocket客户端,请参阅websocket-lite crate。
hyper-websocket-lite
提供`server_upgrade
`函数,它将客户端的HTTP升级请求桥接到WebSocket协议。
额外的命令行工具
wsinspect
:查看从二进制文件中获取的WebSocket协议级帧数据。cargo run --example wsinspect -- --help
wsdump
:是Python包websocket-client
中发现的wsdump
工具的基本副本。cargo run --example wsdump -- --help
async/await
版本0.3.2及以上使用std
futures和async
、await
关键字。它们基于tokio 0.2和futures 0.3,最早支持的编译器是1.39。版本0.5.0及以上使用tokio 1.x和futures 0.3。
版本0.2.4是async
/await
之前的版本。它基于tokio 0.1和futures 0.1。
lib.rs
:
基于hyper和websocket-lite的WebSocket服务器实现。
依赖项
~5.5–7.5MB
~128K SLoC