我正在开发一个将文件上传到 s3 存储桶的应用程序,我想使用适用于 .net 的 aws sdk 列出对象及其上传日期。有没有这样做的代码?
问问题
1632 次
1 回答
3
UPD:不幸的是,S3 不存储对象的上传日期。它可以为您提供 lastModifiedDate ,如果对象在上传后没有被修改,则它只等于“上传日期”。
为了获得上传日期,您应该在上传期间将其与对象一起保存:
var putRequest = new PutObjectRequest
{
BucketName = bucketName,
Key = keyName,
FilePath = filePath,
ContentType = "text/plain"
};
putRequest.Metadata.Add("x-upload-date", "someUploadDate");
然后从对象元数据中读取
GetObjectRequest request = new GetObjectRequest
{
BucketName = bucketName,
Key = keyName
};
using (GetObjectResponse response = await client.GetObjectAsync(request))
using (Stream responseStream = response.ResponseStream)
using (StreamReader reader = new StreamReader(responseStream))
{
string uploadDate = response.Metadata["x-upload-date"];
}
于 2019-05-03T13:10:14.130 回答