Criar uma aplicação simples usando o AWS SDK para Rust
Você pode começar rapidamente com o AWS SDK para Rust seguindo este tutorial para criar uma aplicação simples que chama um AWS service (Serviço da AWS).
Pré-requisitos
Para usar o AWS SDK para Rust, você deve ter Rust e Cargo instalados.
-
Instale o conjunto de ferramentas Rust: https://www.rust-lang.org/tools/install
-
Instale a ferramenta
cargo-componentexecutando o comando:cargo install cargo-component
Ferramentas recomendadas:
As seguintes ferramentas opcionais podem ser instaladas em seu IDE para ajudar no preenchimento de código e na solução de problemas.
-
A extensão rust-analyzer, consulte Rust in Visual Studio Code
. -
Amazon Q Developer, consulte Instalar a extensão ou o plug-in Amazon Q Developer em seu IDE.
Criar sua primeira aplicação do SDK
Esse procedimento cria sua primeira aplicação do SDK para Rust que lista suas tabelas do DynamoDB.
-
Em uma janela de terminal ou console, navegue até o local no computador em que deseja criar a aplicação.
-
Insira o comando a seguir para criar um diretório
hello_worlde preenchê-lo com um projeto básico do Rust:$cargo new hello_world --bin -
Navegue até o diretório
hello_worlde use o seguinte comando para adicionar as dependências necessárias à aplicação:$cargo add aws-config aws-sdk-dynamodb tokio --features tokio/fullEssas dependências incluem as caixas do SDK que fornecem recursos de configuração e suporte para o DynamoDB, incluindo a caixa
tokiousada para implementar operações de E/S assíncronas. nota
A menos que você use um recurso como o
tokio/full, o Tokio, não fornecerá um runtime assíncrono. O SDK para Rust requer um runtime assíncrono. -
Atualize
main.rsno diretóriosrcpara conter o código a seguir.use aws_config::meta::region::RegionProviderChain; use aws_config::BehaviorVersion; use aws_sdk_dynamodb::{Client, Error}; /// Lists your DynamoDB tables in the default Region or us-east-1 if a default Region isn't set. #[tokio::main] async fn main() -> Result<(), Error> { let region_provider = RegionProviderChain::default_provider().or_else("us-east-1"); let config = aws_config::defaults(BehaviorVersion::latest()) .region(region_provider) .load() .await; let client = Client::new(&config); let resp = client.list_tables().send().await?; println!("Tables:"); let names = resp.table_names(); for name in names { println!(" {}", name); } println!(); println!("Found {} tables", names.len()); Ok(()) }nota
Esse exemplo exibe apenas a primeira página de resultados. Consulte Usar resultados paginados no AWS SDK para Rust para saber como lidar com várias páginas de resultados.
-
Execute o programa:
$cargo runVocê deve ver uma lista com os nomes das suas tabelas.