2 个不稳定版本
0.2.0 | 2022 年 10 月 12 日 |
---|---|
0.1.0 | 2022 年 10 月 12 日 |
#1986 在 数据库接口 中
每月 237 次下载
12KB
54 代码行
bb8-arangodb
基于 bb8 和 arangors 的 crate 的 ArangoDB 支持。该库支持 arangors
所支持的所有身份验证方法,由 AuthenticationMethod
定义。
安装
确保将 bb8
和 bb8-arangodb
添加到您的 Cargo.toml
中,例如
[dependencies]
bb8 = "0.8"
bb8-arangodb = "0.1"
arangors = "0.5"
示例
use bb8::Pool;
use bb8_arangodb::{ArangoConnectionManager, AuthenticationMethod};
use arangors::uclient::reqwest::ReqwestClient;
use futures_util::join_all;
#[tokio::main]
async fn main() {
let manager = ArangoConnectionManager::<ReqwestClient>::new(
"https://127.0.0.1:8529".to_string(),
AuthenticationMethod::JWTAuth("root".to_string(), "openSesame".to_string())
);
let pool = Pool::builder().max_size(5).build(manager).await.unwrap();
for _i in 0..10 {
let pool = pool.clone();
handles.push(tokio::spawn(async move {
let conn = pool.get().await.unwrap();
let db = conn.db("test").await.unwrap();
let result: Vec<String> = db
.aql_str("FOR doc IN collection RETURN doc.name")
.await
.unwrap();
println!("{:?}", results);
}))
}
join_all(handles).await;
}
运行测试
要运行测试,您需要本地运行 ArangoDB。要使用 docker 运行测试,在克隆仓库后执行以下命令
# Starting ArangoDB in a detached docker container
docker run -d -p 8529:8529 -e ARANGO_ROOT_PASSWORD=openSesame --name arangodb arangodb/arangodb:3.10.0
# Wait some seconds to let ArangoDB start and run tests
cargo test
# Stop and remove the ArangoDB container
docker stop arangodb && docker rm arangodb
版本
详细的版本说明可在本仓库的 CHANGELOG.md 中找到。
报告问题
发现了错误?我们很乐意了解它!
请通过 GitHub 问题跟踪器 报告所有问题。
贡献
请参阅 bb8-arangodb 贡献指南 了解如何向 bb8-arangodb
贡献。
许可证
bb8-arangodb
主要在 MIT 许可证和 Apache 许可证(版本 2.0)的条款下分发。
有关详细信息,请参阅 LICENSE-MIT 和 LICENSE-APACHE。
依赖项
~6–13MB
~173K SLoC