#events #server-sent-events #sse #http #server-sent

uhttp_sse

无拷贝、无分配 HTTP 服务器端事件协议

2 个版本

使用旧的 Rust 2015

0.5.1 2017年2月23日
0.5.0 2017年1月23日

#server-sent-events 中排名第 26

Download history 45/week @ 2024-04-07 63/week @ 2024-04-14 53/week @ 2024-04-21 40/week @ 2024-04-28 25/week @ 2024-05-05 41/week @ 2024-05-12 34/week @ 2024-05-19 37/week @ 2024-05-26 33/week @ 2024-06-02 19/week @ 2024-06-09 32/week @ 2024-06-16 42/week @ 2024-06-23 8/week @ 2024-06-30 17/week @ 2024-07-07 51/week @ 2024-07-14 40/week @ 2024-07-21

每月下载 118
9 个crate中使用(通过 wick-http-client

MIT 许可证

8KB
95

uhttp_sse -- HTTP 服务器端事件协议

文档

此crate提供了一个无拷贝、无分配的服务器端事件(SSE)协议实现,用于从HTTP服务器流式传输事件。

事件可以直接写入到TcpStream或其他实现Write的对象。

示例

use uhttp_sse::SseMessage;
use std::io::Write;

let mut buf = [0; 31];

{
    let mut sse = SseMessage::new(&mut buf[..]);
    write!(sse.event().unwrap(), "ping").unwrap();
    write!(sse.data().unwrap(), "abc").unwrap();
    write!(sse.data().unwrap(), "{}", 1337).unwrap();
}

// This would result in the "ping" event listener being triggered with the data
// payload "abc1337".
assert_eq!(&buf[..], b"event:ping\ndata:abc\ndata:1337\n\n");

用法

crate可以通过在Cargo.toml中添加它作为依赖项通过cargo使用

[dependencies]
uhttp_sse = "0.5.1"

并在crate根目录中导入它

extern crate uhttp_sse;

无运行时依赖