在scala中列出具有给定前缀的S3中的所有对象

我正在尝试使用以下代码列出带有输入存储桶名称和过滤器前缀的AWS S3存储桶中的所有对象。

import scala.collection.JavaConverters._
import com.amazonaws.services.s3.AmazonS3Client
import com.amazonaws.services.s3.model.ListObjectsV2Request

val bucket_name = "Mybucket"
val fiter_prefix = "Test/a/"

def list_objects(str: String): mutable.Buffer[String] = {
        val request = new ListObjectsV2Request().withBucketName(bucket_name).withPrefix(str)
        val s3_client = new AmazonS3Client
        val result = s3_client.listObjectsV2(request).getObjectSummaries.asScala.map(_.getKey)
        result
      }

list_objects(fiter_prefix)

我面临的问题是它仅返回1000个对象,而不是列出所有对象。

我想得到所有的对象。

问候 马希

评论