5个版本 (重大更新)
0.6.0+20240710.0 | 2024年7月15日 |
---|---|
0.5.0+20240502.0 | 2024年5月8日 |
0.4.0+20240327.0 | 2024年4月2日 |
0.3.0+0.0.6 | 2024年2月14日 |
0.1.0 |
|
#455 在 数据库接口
每月33 次下载
在 oxide-httpmock 中使用
2.5MB
47K SLoC
氧化物Rust SDK
为氧化物API生成绑定。
安装
oxide
包可在crates.io上找到。您可能还想使用tokio
。将它们添加到您的Cargo.toml
文件中或使用cargo add
$ cargo add oxide
$ cargo add tokio
认证
要连接到氧化物API,SDK需要一个主机URL和一个令牌。有两种指定这些信息的方法
- 环境变量:您可以设置OXIDE_HOST和OXIDE_TOKEN环境变量。
- 配置文件:当您在CLI中运行oxide auth login时,会生成一个$HOME/.config/oxide/hosts.toml文件。此文件包含敏感信息,如您的令牌和用户ID。
SDK将首先查找环境变量,如果它们未定义,则查找配置文件。
示例
创建一个新的oxide::Client
,如下所示
use futures::StreamExt;
use oxide::{config::Config, context::Context, prelude::*};
#[tokio::main]
async fn main() {
// Get a client from the on-disk configuration.
let context = Context::new(Config::default()).expect("unabled to create context");
let client: &Client = context.client().expect("unable to get client");
// Start using the client!
// For example we can look at the projects in our silo:
let mut projects = client.project_list().stream();
loop {
match projects.next().await {
// No more items.
None => break,
// Print the name of a project.
Some(Ok(project)) => println!("project {}", *project.name),
// Something went wrong
Some(Err(err)) => println!("error {}", err),
}
}
}
依赖关系
~10–25MB
~420K SLoC