5个版本
1.0.0-alpha… | 2024年2月26日 |
---|---|
1.0.0-alpha… | 2024年2月23日 |
1.0.0-alpha… | 2024年2月22日 |
在WebAssembly中排名第269
每月下载量194次
15KB
209 代码行
flawless-slack
Rust的通用传输协议Slack客户端。
动机
Rust代码可以在许多地方运行,从小型嵌入式系统到浏览器。这些环境彼此之间非常不同。有些要求你实现自己的TCP实现,而有些甚至不提供对TCP等底层原语的低级访问。
flawless-slack
旨在构建一个在“任何地方”都能同等良好工作的Slack客户端。它起源于在flawless持久执行引擎中需要Slack客户端的需求。该引擎运行编译为WebAssembly的Rust代码,并且不提供对TCP流的原始访问,也不提供异步执行器可以使用的不阻塞syscalls
。这使得大多数其他Slack客户端库都不适用。
默认情况下,flawless-slack
将在非WebAssembly的系统上使用reqwest::blocking
作为传输层。当编译为wasm32-unknown-unknown
时,它将使用flawless
实现。然而,所有默认传输层都可以被禁用,并由你直接提供,如果你想在自定义环境中使用它。
快速入门
Slack客户端需要两个参数,一个密钥令牌和一个HTTP客户端实现。如果你想在flawless中使用客户端,可以使用提供的FlawlessHttpClient
use flawless_slack::{http_client::flawless_http_client::FlawlessHttpClient, SlackClient};
let secret_token = "<SECRET>".to_owned();
let slack_client = SlackClient::new(secret_token, FlawlessHttpClient {});
slack_client.send_message("#general","Hello World!").ok();
依赖项
~0.7–13MB
~160K SLoC