1个不稳定版本
0.46.0 | 2020年12月22日 |
---|
#100 在 #rusoto-aws
672 每月下载量
被 216 crates 使用
255KB
5.5K SLoC
Rusoto Core
Linux / OS X | |
Windows | |
Rusoto 是一个Rust的AWS SDK
⚠️ 这是Materialize对Rusoto的分支。 ⚠️
Rusoto 已经 停止维护几个月了。我们预计Amazon很快将宣布接管Rusoto或发布官方Rust SDK。在此期间,我们将进行最小限度的维护。我们将接受依赖项升级和明显的错误修复。
crates以“mz”为前缀发布,例如 mz_rusoto_core
。
你可能正在寻找
安装
Rusoto可在 crates.io 上找到。要在使用Cargo构建的Rust程序中使用Rusoto,请将其添加为依赖项,并使用 rusoto_$SERVICENAME
对任何您想使用的支持AWS服务。
例如,仅包括S3和SQS
[dependencies]
mz_rusoto_core = "0.46.0"
mz_rusoto_sqs = "0.46.0"
mz_rusoto_s3 = "0.46.0"
迁移说明
重大更改和迁移详情请参阅 https://rusoto.org/migrations.html。
请注意,从v0.43.0版本开始,Rusoto使用Rust的 std::future::Future
和Tokio 0.2生态系统。
用法
Rusoto为每个AWS服务提供了一个crate,其中包含该服务的Rust类型。这些服务的完整列表可以在 此处 找到。所有其他公共类型都重新导出到crate根目录。通过运行 cargo doc
或访问在线 文档 来查看完整详情。
使用Rusoto的DynamoDB API列出数据库中所有表名称的简单示例
use rusoto_core::Region;
use rusoto_dynamodb::{DynamoDb, DynamoDbClient, ListTablesInput};
#[tokio::main]
async fn main() {
let client = DynamoDbClient::new(Region::UsEast1);
let list_tables_input: ListTablesInput = Default::default();
match client.list_tables(list_tables_input).await {
Ok(output) => match output.table_names {
Some(table_name_list) => {
println!("Tables in database:");
for table_name in table_name_list {
println!("{}", table_name);
}
}
None => println!("No tables in database!"),
},
Err(error) => {
println!("Error: {:?}", error);
}
}
}
与rustls的使用
如果您不想使用OpenSSL,可以通过编辑您的Cargo.toml文件将其替换为rustls
[dependencies]
rusoto_core = { version="0.46.0", default_features=false, features=["rustls"] }
rusoto_sqs = { version="0.46.0", default_features=false, features=["rustls"] }
rusoto_s3 = { version="0.46.0", default_features=false, features=["rustls"] }
凭证
有关Rusoto使用AWS凭证(如优先级和刷新)的更多信息,请参阅AWS凭证。
语义版本控制
Rusoto遵循语义版本控制2.0.0。在达到1.0.0之前,API被视为不稳定。请参阅Cargo.toml或rusoto on crates.io以获取当前版本。
发布
有关发布计划和流程的信息请参阅RELEASING。
贡献
请参阅CONTRIBUTING。
支持的操作系统和Rust版本
支持并经过Azure Pipelines和Appveyor测试的操作系统包括Linux、OSX和Windows。
支持Rust稳定版、Beta版和Nightly版。
许可证
Rusoto在MIT许可证的条款下分发。
有关详细信息,请参阅LICENSE。
依赖项
~14–29MB
~440K SLoC