

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在適用於 Rust 的 AWS SDK 中覆寫用戶端的單一操作組態
<a name="peroperation"></a>

[建立服務用戶端](config-code.md)之後，組態會變成不可變，並套用至所有後續操作。雖然目前無法修改組態，但每個操作都可以覆寫組態。

每個操作建置器都有可用來建立 `customize`的方法，`CustomizableOperation`讓您可以覆寫現有組態的個別複本。原始用戶端組態將保持不變。

下列範例顯示建立呼叫兩個操作的 Amazon S3 用戶端，第二個會覆寫以傳送至不同的操作 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`。

如需使用 `customize`為單一操作新增攔截器的範例，請參閱 [僅特定操作的攔截器](interceptors.md#interceptors-registration-specific)。