【问题标题】:Get an S3Object from a GetObjectResponse in AWS Java SDK 2.0从 AWS Java SDK 2.0 中的 GetObjectResponse 获取 S3Object
【发布时间】:2019-01-30 18:33:51
【问题描述】:

在 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 构建一个?

【问题讨论】:

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


    【解决方案1】:

    使用响应输入流。希望下面的代码能解决你的问题。

    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);
    }
    

    【讨论】:

    猜你喜欢
    • 2016-03-12
    • 2020-07-19
    • 2017-03-08
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多