AWS SDK for Rust で、クライアントの 1 回でのオペレーション設定をオーバーライドする - AWS SDK for Rust

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK for Rust で、クライアントの 1 回でのオペレーション設定をオーバーライドする

サービスクライアントを作成すると、設定は変更不可能になり、以降のすべてのオペレーションに適用されます。この時点で設定は変更できませんが、オペレーションごとにオーバーライドできます。

各オペレーションビルダーには、既存の設定の個別のコピーをオーバーライドできるように、CustomizableOperation を作成するための customize メソッドがあります。元のクライアント設定は変更されません。

次は、2 つのオペレーションを呼び出す Amazon S3 クライアントの作成例を示しています。2 番目のオペレーションは、別の AWS リージョン に送信するようにオーバーライドされます。Amazon S3 のオブジェクト呼び出しはすべて us-east-1 リージョンを使用します。ただし、API コールが明示的にオーバーライドされ、変更された us-west-2 を使用する場合を除きます。

use aws_config::{BehaviorVersion, Region}; let config = aws_config::defaults(BehaviorVersion::latest()) .region("us-east-1") .load() .await; let s3 = aws_sdk_s3::Client::new(&config); // Request will be sent to "us-east-1" s3.list_buckets() .send() .await?; // Unset fields default to using the original config value let modified = aws_sdk_s3::Config::builder() .region(Region::from_static("us-west-2")); // Request will be sent to "us-west-2" s3.list_buckets() // Creates a CustomizableOperation .customize() .config_override(modified) .send() .await?;
注記

前の例は Amazon S3 向けですが、概念はすべてのオペレーションで同じです。一部のオペレーションでは、CustomizeableOperation で追加のメソッドがある場合があります。

1 回のオペレーションで customize を使用してインターセプターを追加する例については、「特定のオペレーションのみのインターセプター」を参照してください。