1个稳定版本
1.0.0 | 2021年9月21日 |
---|
#227 在 WebSocket
每月38次下载
11KB
184 行
websocket-async-io
使用web-sys
在WebSocket之上实现的AsyncRead
和AsyncWrite
示例
async fn run() -> Result<(), std::io::Error> {
let ws = WebsocketIO::new(([127, 0, 0, 1], 8000).into()).await?;
let (mut reader, mut writer) = ws.split();
writer.write_all(&[0, 1, 2, 3, 93]).await?;
writer.write_all(&[42, 34, 93]).await?;
writer.write_all(&[0, 0, 1, 2, 93]).await?;
let mut buf = Vec::new();
for _ in 0..3 {
reader.read_until(93, &mut buf).await?;
console_log!("{:?}", buf);
buf.clear();
}
Ok(())
}
lib.rs
:
使用web-sys
在WebSocket之上实现的AsyncRead
和AsyncWrite
示例
let ws = WebsocketIO::new("localhost:8000").await?;
let (mut reader, mut writer) = ws.split();
writer.write_all(&[0, 1, 2, 3, 93]).await?;
writer.write_all(&[42, 34, 93]).await?;
writer.write_all(&[0, 0, 1, 2, 93]).await?;
let mut buf = Vec::new();
for _ in 0..3 {
reader.read_until(93, &mut buf).await?;
console_log!("{:?}", buf);
buf.clear();
}
依赖关系
~6.5–9MB
~172K SLoC