1 个不稳定版本
0.1.0 | 2020 年 3 月 23 日 |
---|
#35 in #subscribe
32 每月下载量
105KB
2K SLoC
PubNub Rust SDK
PubNub Rust SDK 基于 Tokio 0.2
。此库使用 HTTP/2
与 PubNub Edge 消息网络通信。
MSRV
支持 Rust 1.39.0 及更高版本。
开始使用
首先您需要将依赖项添加到项目中。
Cargo.toml
轻松将 PubNub 库添加到您的 Cargo.toml
文件中。
[dependencies.pubnub_hyper]
git = "https://github.com/pubnub/rust"
简单使用
尝试以下示例代码以快速启动。
use futures_util::stream::StreamExt;
use pubnub_hyper::runtime::tokio_global::TokioGlobal;
use pubnub_hyper::transport::hyper::Hyper;
use pubnub_hyper::{core::json::object, Builder};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let transport = Hyper::new()
.publish_key("demo")
.subscribe_key("demo")
.build()?;
let mut pubnub = Builder::new()
.transport(transport)
.runtime(TokioGlobal)
.build();
let message = object! {
"username" => "JoeBob",
"content" => "Hello, world!",
};
let mut stream = pubnub.subscribe("my-channel").await;
let timetoken = pubnub.publish("my-channel", message).await?;
println!("timetoken = {:?}", timetoken);
let received = stream.next().await;
println!("received = {:?}", received);
Ok(())
}
示例
您可以在 ./pubnub-hyper/examples
目录中找到这些示例。探索每个示例中可用的使用模式。您可以使用以下 cargo 命令轻松运行每个示例
cargo run --example publish-subscribe
依赖项
~9–20MB
~267K SLoC