使用带有文件夹前缀的aws服务(api网关)代理从S3获取文件列表

时间:2018-06-07 11:33:03

标签: amazon-s3 aws-api-gateway aws-java-sdk

我正在使用AmazonS3Client示例代码下方通过aws api网关从 S3 存储桶中获取带有前缀的文件列表。 但是我得到了那个桶的所有文件。

当我检查api网关日志中的网址时,网址中没有前缀参数。

提前致谢

ListObjectsV2Request req = new ListObjectsV2Request().withBucketName("mybucket").withPrefix("myfolder").withDelimiter("/");
            req.putCustomRequestHeader("Authorization", "#####");
            ListObjectsV2Result result;
            do {
                result = s3Client.listObjectsV2(req);


                for (S3ObjectSummary objectSummary : result.getObjectSummaries()) {
                    System.out.printf(" - %s (size: %d)\n", objectSummary.getKey(), objectSummary.getSize());
                }
                // If there are more than maxKeys keys in the bucket, get a continuation token
                // and list the next objects.
                String token = result.getNextContinuationToken();
                System.out.println("Next Continuation Token: " + token);
                req.setContinuationToken(token);
            } while (result.isTruncated());

1 个答案:

答案 0 :(得分:0)

我现在可以通过添加查询字符串来列出对象:定界符,api网关配置中的前缀。as shown in the image