3 个版本

0.1.2 2020年3月4日
0.1.1 2020年2月29日
0.1.0 2020年2月29日

#36 in #signature-verification

MIT 许可证

15KB
144 代码行

slack-http-verifier

该crate实现了验证 Slack 请求令牌的功能,如此处所述。

支持现成的 reqwest::blocking::Request 和 http::Request,但你可以创建一个实现 HTTPRequest 的新类型以满足你的需求。

使用 HTTP 请求 API

use slack_http_verifier::SlackHTTPVerifier;

let verifier = SlackHTTPVerifier::new("abcd1234...").unwrap();

// ... Receive a request somehow ...

assert!(verifier.verify(&req).is_ok());

或使用原始 API

use slack_http_verifier::SlackVerifier;

let verifier = SlackVerifier::new("abcd1234...").unwrap();

// ... Receive a request somehow ...
let ts = req.get("X-Slack-Request-Timestamp");
let sig = req.get("X-Slack-Signature");
let body = req.body().as_str();

assert!(verifier.verify(&ts, &body, &sig).is_ok());

依赖项

~3–7MB
~162K SLoC