#client-server #framework #tokio #yew

已撤回 basws

一个简单的异步WebSocket客户端/服务器框架

0.1.4 2021年2月8日
0.1.3 2021年2月5日
0.1.1 2021年1月30日
0.1.0-dev-8 2020年10月20日
0.1.0-dev-6 2020年9月30日

#195#yew

每月37 次下载

MIT 许可证

48KB
665

basws

crate version

basws 是一个旨在简化构建交互式WebSocket API所需代码量的简单框架。

basws 在服务器端基于 warp 构建,在客户端基于 tokio-tungstenite。这两个crate都使用了 tokio 运行时。

功能

  • 基于 cbor 构建,在各个技术堆栈中有许多实现
  • 支持单个账户在多个设备上登录
  • 易于发送带外异步消息
  • 在服务器和客户端上提供网络时序统计信息

有关简单示例,请查看 ./basws/examples 目录中的聊天示例。

使用方法

环境

服务器

将以下任意一行添加到您的 Cargo.toml 文件中

# Either use the basws parent crate
basws = { version = "0.1", features = ["server"] }
# Or, use the basws-server crate
basws-server = "0.1"

客户端

将以下任意一行添加到您的 Cargo.toml 文件中

# Either use the basws parent crate
basws = { version = "0.1", features = ["client"] }
# Or, use the basws-client crate
basws-client = "0.1"

Yew

将以下任意一行添加到您的 Cargo.toml 文件中

# Either use the basws parent crate
basws = { version = "0.1", features = ["yew"] }
# Or, use the basws-client crate
basws-yew = "0.1"

在构建发布版本时,需要存在一个环境变量:BASWS_CLIENT_ENCRYPTION_KEY。它应该是一个32字符的字符串。它用于加密存储在浏览器中的会话信息。如果您怀疑需要使现有的会话信息失效,则旋转此密钥将使每个用户开始一个新的会话。

依赖项

~3–18MB
~203K SLoC