10个稳定版本

3.0.1 2024年3月17日
3.0.0 2021年10月25日
2.3.0 2021年9月5日
2.2.0 2020年4月30日
1.0.1 2019年8月27日

#8 in #key-id

Download history 149/week @ 2024-04-02 58/week @ 2024-07-02

每月58次下载

Apache-2.0

13KB
156 代码行

github-app-auth

此工具不再处于积极开发状态。如果您有兴趣接管或重新利用crates.io上的名称,请随时与我联系:[email protected]

crates.io Documentation

这是一个用于以GitHub应用身份通过GitHub API进行身份验证的小型库。

有关整体流程的文档:https://developer.github.com/apps/building-github-apps/authenticating-with-github-apps


lib.rs:

此crate提供了一个库,用于以GitHub应用身份通过GitHub API进行身份验证。有关身份验证流程的详细信息,请参阅身份验证GitHub应用

示例

use github_app_auth::{GithubAuthParams, InstallationAccessToken};

// The token is mutable because the installation access token must be
// periodically refreshed. See the `GithubAuthParams` documentation
// for details on how to get the private key and the two IDs.
let mut token = InstallationAccessToken::new(GithubAuthParams {
    user_agent: "my-cool-user-agent".into(),
    private_key: b"my private key".to_vec(),
    app_id: 1234,
    installation_id: 5678,
}).await.expect("failed to get installation access token");

// Getting the authentication header will automatically refresh
// the token if necessary, but of course this operation can fail.
let header = token.header().await.expect("failed to get authentication header");

token.client.post("https://some-github-api-url").headers(header).send().await;

依赖项

~11–24MB
~466K SLoC