1 个不稳定版本
0.1.0 | 2019 年 8 月 6 日 |
---|
#46 in #consumer
21KB
479 行代码(不包括注释)
这是一个正在进行中的项目!
请勿将其用于生产环境。
有哪些内容?
目前内容不多,示例列表相当详尽。
信封
结果类型
每个端点返回 Result<GitHubApiResult<T>, GitHubApiError>
.
GitHubApiResult
pub struct GitHubApiResult<T> {
pub result: T,
pub raw_result: String,
pub limits: Option<LimitRemainingReset>,
pub owner: Option<String>,
pub repository: Option<String>,
pub next_page: Option<u64>,
}
GitHubApiError
pub enum GitHubApiError {
NotImplemented,
JsonError((JsonError, String)),
GitHubError((String, String)),
ReqwestError(ReqwestError),
}
示例
获取速率限制
let gh = GitHubApi::new(&username, &password);
let result = gh.get_rate_limit();
println!("{:#?}", result);
获取许可证
let gh = GitHubApi::new(&username, &password);
let license = gh.get_license("segfaultsourcery", "githubapi");
println!("{:#?}", license);
获取发布版本
let gh = GitHubApi::new(&username, &password);
for page in gh.get_releases("segfaultsourcery", "githubapi") {
println!("{:#?}", page);
}
获取标签
let gh = GitHubApi::new(&username, &password);
for page in gh.get_tags("segfaultsourcery", "githubapi") {
println!("{:#?}", page);
}
依赖
~22MB
~476K SLoC