gpt4 book ai didi

c# - 如何以编程方式为 Amazon S3 设置 Http Header?

转载 作者:可可西里 更新时间:2023-11-01 08:17:09 25 4
gpt4 key购买 nike

我想为我的 asp.net web 应用程序存储在 S3 中的文件设置到期日期 header 。

  • 第一个案例 - 在 PutObject 期间要求
  • 第二个案例——更新到期日每月一次至更新到期日期。

最佳答案

当您使用 Asp.net 时,我假设您使用的是 AWS .NET SDK .

要在上传对象时添加 Expires(或任何其他 http header ),请将其添加为 PutObject 请求的一部分。

var client = new Amazon.S3.AmazonS3Client(AWS_Key, AWS_SecretKey);

var req = new Amazon.S3.Model.PutObjectRequest()
.WithFilePath(@"C:\myfile.txt")
.WithKey("myfile.txt")
.WithBucketName("mybucket");

req.AddHeader("expires", "Thu, 01 Dec 1994 16:00:00 GMT");

client.PutObject(req);

要更改现有对象的 header ,您需要将对象复制到自身。

var req = new Amazon.S3.Model.CopyObjectRequest()
.WithDirective(Amazon.S3.Model.S3MetadataDirective.REPLACE)
.WithSourceBucket("mybucket")
.WithSourceKey("myfile.txt")
.WithDestinationBucket("mybucket")
.WithDestinationKey("myfile.txt");

req.AddHeader("expires", "Thu, 01 Dec 1994 16:00:00 GMT");

client.CopyObject(req);

注意:必须设置 .WithDirective(Amazon.S3.Model.S3MetadataDirective.REPLACE) 才能指定新 header 。否则,只会复制现有的 header 。

更多信息请参阅 .NET SDK docs .

关于c# - 如何以编程方式为 Amazon S3 设置 Http Header?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5533051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com