2个稳定版本
1.0.1 | 2022年9月20日 |
---|---|
1.0.0 | 2022年5月24日 |
#34 in #api-token
123 每月下载量
19KB
306 代码行数(不含注释)
github-scopes-rs
发现GitHub令牌作用域权限,并在查询GitHub之前提供检查令牌权限的简单接口。在许多情况下,您尝试对GitHub执行操作,但收到权限错误的提示。本项目允许您在执行操作之前了解您的令牌具有哪些权限,称为GitHub,如果没有正确的权限,您可以告知用户需要哪些具体的权限。
工作原理
我们使用提供的令牌调用GitHub API,以获取令牌具有的权限作用域,以便访问API。然后,权限被转换为可以操作的简单对象。点击 这里 阅读GitHub文档。
用法
将以下内容添加到Cargo.toml
[dependencies]
github-scopes-rs = { version = "1.0.0" }
以下是一个简单的示例
fn main() -> AnyResult<()> {
let permissions = match OAuthContext::new("token") {
Ok(s) => s.get_scope_permissions(),
Err(e) => return Err(e),
};
if !permissions.repo.all {
return Err(anyhow!("`repo` permission is mandatory"));
}
Ok(())
}
您可以通过克隆此仓库,然后运行它。
GITHUB_TOKEN=<TOKEN> cargo run --example base
依赖项
~6–19MB
~281K SLoC