我在工作中有一个用例,需要一种方法来查找最新的数字签名证书。有没有办法使用 C# .NET CORE 5.0 中的 AWS.SDK 从 S3 存储桶中获取最后修改的文件/对象?
没有。
您将需要检索所有对象,然后使用 C# 程序中的代码来查找具有最新
LastModifiedDate
的返回对象。
ListObjects 最多返回 1000 个文件,因此要在所有情况下提取最新文件,您应该使用结果分页:
var request = new ListObjectsV2Request {
BucketName = bucketName,
};
var allObjects = new List<S3Object>();
ListObjectsV2Response response;
do {
response = await _s3Client.ListObjectsV2Async(request);
allObjects.AddRange(response.S3Objects);
request.ContinuationToken = response.NextContinuationToken;
} while (response.IsTruncated);
var latestFile = allObjects.OrderByDescending(o => o.LastModified).FirstOrDefault();