2 个不稳定版本
0.2.0 | 2021 年 5 月 18 日 |
---|---|
0.1.0 | 2021 年 5 月 17 日 |
#27 在 #auth-token
35KB
727 行
use-github-api-rs
一个用于 Rust 的 GitHub API 客户端。
警告!
这个软件包 100% 不稳定。目前几乎所有有用的功能都缺失。目前,这个软件包主要是骨架。可能会不断发生破坏性变更。尽管如此,这个软件包仍然遵循 SemVer。但是,由于这个库仍然在 0.x
版本,破坏性变更发生在 次版本。如果您发现任何错误,请报告它们。请不要提交与端点相关的功能请求,因为已经有许多类似的请求了。提交与身份验证相关或 API 使用相关的请求(添加新的软件包功能、公开字段等)是完全可以的。
示例
use use_github_api::{GithubClient, schema::users::list};
let client = GithubClient::builder().auth(env!("GITHUB_TOKEN")).build().unwrap();
let data: Vec<list::User> = client.users().list(list::Params {
per_page: Some(50),
since: None,
});
println!("{:?}", data);
// Go to https://api.github.com/users and the response you see there will be the response you see here, minus all of the URL fields.
身份验证
建议使用身份验证,默认开启。要禁用,请在 use-gitub-api = { version = "[version]", no-default-features = true }
在 Cargo.toml
中。没有身份验证,您无法做很多事情。
获取身份验证令牌
要获取身份验证令牌,您需要前往 GitHub 设置 并在那里生成一个令牌。然后,设置一个环境变量并使用它通过库进行身份验证。
软件包功能
-
如上所述。auth
-
启用使用 GitHub 企业实例的 API。启用enterprise
auth
功能。 -
请参阅 https://githubdocs.cn/en/graphql/guides/using-global-node-ids。这将公开节点 ID。node_ids
目标
- 易于使用的 API
- 支持企业版和普通 GitHub
- 支持预览功能(搜索提交 API 等)
- 在认为合适时更改响应模式(删除 URL 等)
- 测试事物
待办事项(按优先级排序)
auth
表示需要身份验证,而 auth?
表示将执行某些操作,但不是必需的。
- 完成客户端
- 可能支持 GitHub AE(一旦退出预览)
- 开始创建 API
- 创建
users
模块- 基本操作
- 列出用户
- 获取单个用户 - auth?
- 获取用户上下文信息(基于上下文)- auth
- GET和PATCH当前用户 - auth
- 用户封禁 - auth
- 电子邮件 - auth
- 关注者 - auth
- SSH密钥 - auth
- GPG密钥 - auth
- 为上述所有内容创建响应模式
- 基本操作
- 创建
repo
模块
- 创建
- 优化错误
- 处理速率限制
依赖项
~4–17MB
~250K SLoC