小编Chi*_*pal的帖子

AmazonS3:获取警告:S3AbortableInputStream:并非所有字节都从S3ObjectInputStream读取,中止HTTP连接

这是我得到的警告:

S3AbortableInputStream:并非所有字节都从S3ObjectInputStream中读取,从而中止HTTP连接.这可能是错误,可能导致次优行为.通过范围GET仅请求您需要的字节或在使用后消耗输入流.

我尝试使用try with resources但是S3ObjectInputStream似乎没有通过此方法关闭.

 try (S3Object s3object = s3Client.getObject(new GetObjectRequest(bucket, key));
      S3ObjectInputStream s3ObjectInputStream = s3object.getObjectContent();
      BufferedReader reader = new BufferedReader(new InputStreamReader(s3ObjectInputStream, StandardCharsets.UTF_8));
    ){
  //some code here blah blah blah
 }
Run Code Online (Sandbox Code Playgroud)

我也试过下面的代码并明确关闭,但这也不起作用:

S3Object s3object = s3Client.getObject(new GetObjectRequest(bucket, key));
S3ObjectInputStream s3ObjectInputStream = s3object.getObjectContent();

try (BufferedReader reader = new BufferedReader(new InputStreamReader(s3ObjectInputStream, StandardCharsets.UTF_8));
){
     //some code here blah blah
     s3ObjectInputStream.close();
     s3object.close();
}
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

PS:我只从S3读取两行文件,文件中有更多数据.

amazon-s3 aws-sdk aws-java-sdk

12
推荐指数
2
解决办法
1万
查看次数

标签 统计

amazon-s3 ×1

aws-java-sdk ×1

aws-sdk ×1