18个版本 (11个破坏性版本)
0.13.0 | 2024年7月30日 |
---|---|
0.12.2 | 2023年12月20日 |
0.12.0 | 2023年11月15日 |
0.11.0 | 2022年11月7日 |
0.2.0 | 2019年7月24日 |
#20 in HTTP客户端
每月208,727次下载
用于16个crate(11个直接使用)
300KB
1.5K SLoC
eventsource-client
Server-Sent Events协议(即EventSource)的客户端。
要求
需要tokio。
用法
仅打印接收到的每个事件类型的示例
use eventsource_client as es;
let mut client = es::ClientBuilder::for_url("https://example.com/stream")?
.header("Authorization", "Basic username:password")?
.build();
client
.stream()
.map_ok(|event| println!("got event: {:?}", event))
.map_err(|err| eprintln!("error streaming events: {:?}", err));
(为了清晰起见,省略了一些样板代码;请参阅示例目录以获取完整、可工作的代码。)
特性
- 基于tokio的流式客户端。
- 支持在HTTP请求中设置自定义头部(例如,用于需要授权的端点)。
- 失败连接的重试。
- 如果连接中断,则重新连接,使用指数退避。
稳定性
为反馈目的的早期阶段发布。可能包含错误或性能问题。API可能会更改。
依赖项
~5–16MB
~204K SLoC