以前使用AWSSDK v1.5.12.0时,以下代码运行正常:
request.WithBucketName(_bucketName)
.WithCannedACL(S3CannedACL.PublicRead)
.WithKey(filePath).InputStream = inputStream;
request.AddHeaders(AmazonS3Util.CreateHeaderEntry("ContentType", contentType));
现在我使用的是v2.0.8.0,出于某种原因,他们完全改变了api。
我正在努力的部分是不再存在的AddHeaders
方法(也AmazonS3Util.CreateHeaderEntry
)
我现在无法像以前那样添加标题。
有一个只读Headers
属性,我找不到另一种方法来添加它......我怎么能这样做?
答案 0 :(得分:1)
你是对的,AWS SDK 2.X删除了一些方法,一个是" AddHeader"方法。要添加标题,只需直接修改标题集合即可。
<强> req.Headers["expires"] = "Thu, 01 Dec 1994 16:00:00 GMT";
强>
以下是添加过期标头的示例:
var client = new Amazon.S3.AmazonS3Client(AWS_Key, AWS_SecretKey);
var req = PutObjectRequest req= new PutObjectRequest()
{
BucketName = "mybucket",
Key = "myfile.txt",
FilePath = @"C:\myfile.txt"
};
req.Headers["expires"] = "Thu, 01 Dec 1994 16:00:00 GMT";
client.PutObject(req);