

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat Layanan AWS permintaan menggunakan AWS SDK untuk Rust
<a name="make-request"></a>

 Untuk mengakses secara terprogram Layanan AWS, AWS SDK untuk Rust menggunakan struct klien untuk masing-masing. Layanan AWS Misalnya, jika aplikasi Anda perlu mengakses Amazon EC2, aplikasi Anda akan membuat struct EC2 klien Amazon untuk berinteraksi dengan layanan tersebut. Anda kemudian menggunakan klien layanan untuk membuat permintaan untuk itu Layanan AWS. 

Untuk membuat permintaan ke Layanan AWS, Anda harus terlebih dahulu membuat dan [mengkonfigurasi](configure.md) klien layanan. Untuk setiap penggunaan kode Layanan AWS Anda, ia memiliki peti sendiri dan tipe khusus untuk berinteraksi dengannya. Klien mengekspos satu metode untuk setiap operasi API yang diekspos oleh layanan. 

 Untuk berinteraksi dengan Layanan AWS AWS SDK for Rust, buat klien khusus layanan, gunakan metode API-nya dengan rantai gaya pembangun yang lancar, dan panggil untuk menjalankan permintaan. `send()`

Metode ini `Client` mengekspos satu metode untuk setiap operasi API yang diekspos oleh layanan. Nilai pengembalian dari masing-masing metode ini adalah “pembangun lancar”, di mana input yang berbeda untuk API tersebut ditambahkan oleh rantai panggilan fungsi gaya pembangun. Setelah memanggil metode layanan, panggil `send()` untuk mendapatkan [https://doc.rust-lang.org/nightly/core/future/trait.Future.html](https://doc.rust-lang.org/nightly/core/future/trait.Future.html)yang akan menghasilkan output yang berhasil atau`SdkError`. Untuk informasi selengkapnya tentang `SdkError`, lihat [Menangani kesalahan dalam AWS SDK untuk Rust](error-handling.md). 

Contoh berikut menunjukkan operasi dasar menggunakan Amazon S3 untuk membuat bucket di: `us-west-2` Wilayah AWS

```
let config = aws_config::defaults(BehaviorVersion::latest())
    .load()
    .await;
  
let s3 = aws_sdk_s3::Client::new(&config);
  
let result = s3.create_bucket()
    // Set some of the inputs for the operation.
    .bucket("my-bucket")
    .create_bucket_configuration(
        CreateBucketConfiguration::builder()
            .location_constraint(aws_sdk_s3::types::BucketLocationConstraint::UsWest2)
            .build()
        )
    // send() returns a Future that does nothing until awaited.
    .send()
    .await;
```

Setiap peti layanan memiliki modul tambahan yang digunakan untuk input API, seperti berikut ini: 
+ `types`Modul ini memiliki struct atau enum untuk memberikan informasi terstruktur yang lebih kompleks.
+  `primitives`Modul ini memiliki tipe yang lebih sederhana untuk mewakili data seperti tanggal waktu atau gumpalan biner.

 Lihat [dokumentasi referensi API](https://awslabs.github.io/aws-sdk-rust/) untuk peti layanan untuk organisasi dan informasi peti yang lebih detail. Misalnya, `aws-sdk-s3` peti untuk Amazon Simple Storage Service memiliki beberapa [Modul](https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/#modules). Dua di antaranya adalah:
+ [https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/types/index.html](https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/types/index.html)
+ [https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/primitives/index.html](https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/primitives/index.html)