1 个不稳定版本
0.1.0 | 2023年4月9日 |
---|
#35 在 #crud
140KB
3.5K SLoC
rpocket
rpocket是使用Rust编写的PocketBase非官方SDK。此SDK提供了与PocketBase API交互的简单易用接口,允许开发者无缝管理他们的pocketbase服务器并执行CRUD操作。
支持的版本
v0.14.x
功能
- 支持CRUD操作
- MIT许可
- 依赖
reqwest
和tower
包 - 处于早期开发阶段
- 未来支持实时服务
安装
要在Rust项目中使用Rust PocketBase SDK,只需将以下行添加到您的Cargo.toml
文件中
rpocket = "0.1.0"
用法
以下是一个使用Rust PocketBase SDK从演示API获取数据的简单示例
use std::collections::HashMap;
use rpocket::{
model::Collection, model::Record, rpocket::PocketBaseClient, service::admin::AdminAuthResponse,
service::admin::AdminAuthWithPasswordConfig, service::crud::CRUDGetListConfig, PocketBase,
};
#[tokio::main]
async fn main() {
let mut pocket_base = PocketBase::new("https://pocketbase.io", "en");
let config = AdminAuthWithPasswordConfig::<HashMap<String, String>> {
identity: "[email protected]".to_string(),
password: "123456".to_string(),
..Default::default()
};
let result = pocket_base
.admin()
.auth_with_password::<AdminAuthResponse, HashMap<String, String>>(&config)
.await;
match result {
Ok(response) => {
println!("response: {:?}", response);
}
Err(error) => {
println!("error: {:?}", error);
}
}
let config = CRUDGetListConfig {
..Default::default()
};
let result = pocket_base
.collection()
.crud()
.get_list::<Collection>(&config)
.await;
match result {
Ok(response) => {
println!("response: {:?}", response);
}
Err(error) => {
println!("error: {:?}", error);
}
}
let config = CRUDGetListConfig {
..Default::default()
};
let result = pocket_base
.record("users")
.crud()
.get_list::<Record>(&config)
.await;
match result {
Ok(response) => {
println!("response: {:?}", response);
}
Err(error) => {
println!("error: {:?}", error);
}
}
}
贡献
该项目处于早期阶段,欢迎贡献!如果您发现任何错误,请打开问题或提交拉取请求。任何有助于改进此SDK的帮助都将受到高度赞赏。
依赖项
~4–16MB
~244K SLoC