次のコードを使用して、バケットのバージョン管理ステータスを有効に設定できます。
using OSS = AlibabaCloud.OSS.V2; // Alibaba Cloud OSS SDK のエイリアスを作成して、後続の使用を簡素化します。
var region = "cn-hangzhou"; // 必須。バケットが配置されているリージョン。この例では、中国 (杭州) リージョンを使用します。Region を cn-hangzhou に設定します。
var endpoint = null as string; // オプション。OSS へのアクセスに使用されるドメイン名。この例では、中国 (杭州) リージョンのエンドポイントを使用します。Endpoint を https://oss-cn-hangzhou.aliyuncs.com に設定します。
var bucket = "your bucket name"; // 必須。バケット名。
var status = "Enabled"; // 必須。バケットに設定するバージョン管理ステータス。
// OSS SDK のデフォルト設定を読み込みます。設定は、環境変数から AccessKey などの認証情報を自動的に読み取ります。
var cfg = OSS.Configuration.LoadDefault();
// 環境変数を明示的に使用して、ID 検証用の認証情報を取得します。フォーマット: OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET。
cfg.CredentialsProvider = new OSS.Credentials.EnvironmentVariableCredentialsProvider();
// 設定にバケットのリージョンを設定します。
cfg.Region = region;
// エンドポイントが指定されている場合、デフォルトのエンドポイントが上書きされます。
if(endpoint != null)
{
cfg.Endpoint = endpoint;
}
// 設定情報に基づいて OSS クライアントインスタンスを作成します。
using var client = new OSS.Client(cfg);
// PutBucketVersioningAsync メソッドを呼び出して、バケットのバージョン管理を有効にします。
var result = await client.PutBucketVersioningAsync(new OSS.Models.PutBucketVersioningRequest()
{
Bucket = bucket,
VersioningConfiguration = new OSS.Models.VersioningConfiguration()
{
Status = status
}
});
// 結果を出力します。
Console.WriteLine("PutBucketVersioning done"); // 操作が完了したことを示します。
Console.WriteLine($"StatusCode: {result.StatusCode}"); // HTTP ステータスコード。
Console.WriteLine($"RequestId: {result.RequestId}"); // リクエスト ID。この ID は、Alibaba Cloud でのトラブルシューティングに使用されます。
Console.WriteLine("Response Headers:"); // 応答ヘッダー。
result.Headers.ToList().ForEach(x => Console.WriteLine(x.Key + " : " + x.Value)); // すべての応答ヘッダーを走査して出力します。