【发布时间】:2020-08-06 23:57:28
【问题描述】:
我想根据文件创建时间(或 LastModified)时间在 AWS S3 中搜索文件。我知道在 python 中使用 boto3 分页器也是如此,它提供了提供查询字符串的选项,但希望在 go 中实现相同的功能。
任何建议或任何 go-lang 示例都将不胜感激?
我正在尝试列出所有文件的示例代码:
for s.NextContinuationToken != "" {
maxFileRead := 15
bucket := "XXX-XXX-test"
// To check if previous result was truncated
if s.IsTruncated {
fileList, err = s.session.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(bucket),
MaxKeys: aws.Int64(maxFileRead),
ContinuationToken: &s.NextContinuationToken,
})
} else {
fileList, err = s.session.ListObjectsV2(&s3.ListObjectsV2Input{
Bucket: aws.String(bucket),
MaxKeys: aws.Int64(maxFileRead),
})
}
s.IsTruncated = *fileList.IsTruncated
if s.IsTruncated {
s.NextContinuationToken = *fileList.NextContinuationToken
} else {
s.NextContinuationToken = ""
}
if err != nil {
if aerr, ok := err.(awserr.Error); ok {
switch aerr.Code() {
case s3.ErrCodeNoSuchBucket:
fmt.Println(s3.ErrCodeNoSuchBucket, aerr.Error())
default:
fmt.Println(aerr.Error())
}
} else {
// Print the error, cast err to awserr.Error to get the Code and
// Message from an error.
fmt.Println(err.Error())
}
}
}
现在我想将搜索修改为仅列出在特定时间之后创建的文件。
【问题讨论】:
-
你有没有尝试过?您能否展示您尝试过的内容以及遇到的问题?对第 3 方资源/教程/等的请求与 Stack Overflow 无关。
-
@Adrian 用示例代码修改了上面的代码。
-
@user3445024 显示您尝试按上次修改和遇到的任何问题进行过滤。
标签: amazon-web-services go amazon-s3 aws-sdk-go