java - 从 AWS Java SDK 2.0 中的 GetObjectResponse 获取 S3Object

标签 java aws-java-sdk-2.x

在 AWS Java SDK 1.x 中,我可以像这样从 S3Client 获取 S3Object

S3Object obj = mS3Client.getObject(pBucket, pKey);

我正在尝试使用 AWS Java SDK 2.0 复制该功能(并以 S3Object 结束),但我能得到的最接近的是 GetObjectResponse,并且我找不到任何简单的方法调用来将响应转换为 S3Object

GetObjectResponse response = mS3Client.getObject(
        GetObjectRequest.builder()
                .bucket(pBucket)
                .key(pKey)
                .build())
        .response();

如何从 2.0 S3Client 获取 S3Object,或从 GetObjectResponse 构建一个?

最佳答案

使用 ResponseInputStream。希望下面的代码能解决您的问题。

GetObjectRequest request = GetObjectRequest.builder()
    .bucket("BucketName")
    .key("key")
    .build();
ResponseInputStream<GetObjectResponse> s3objectResponse = s3Client
    .getObject(request);
BufferedReader reader = new BufferedReader(new InputStreamReader(s3objectResponse));

String line;            
while ((line = reader.readLine()) != null) {            
    System.out.println(line);
}

关于java - 从 AWS Java SDK 2.0 中的 GetObjectResponse 获取 S3Object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54447306/

相关文章:

java - 不将javax.net.ssl.trustStore设置为系统属性的JMX SSL连接

java - 跨域认证

amazon-web-services - 具有乐观锁定和批量写入操作的 AWS DynamoDb

aws-lambda - 使用 Java SDK 与 AWS 的连接需要多长时间?

java - 检查字符串是否以 _ 或数字 (0-9) 开头

java - 如何创建使用 SAX 解析 xml 的处理程序?

java - eclipse RCP : boolean variable to check a View active or not

amazon-web-services - 如何检查存储桶是否已存在于 AWS S3 中

java - 如何在 Java SDK 2.0 中构建用于文件上传的 Amazon S3 Presigned PostPolicy?