来自aws s3的getObject变得乱七八糟

时间:2017-07-14 14:49:17

标签: javascript node.js amazon-web-services amazon-s3 buffer

在我们的项目中,我们有1个服务将本地csv上传到s3,我正在开发另一个下载使用nodejs上传的csv的服务。当我尝试打印内容字符串(小csv)时,我在内容中得到了胡言乱语。 代码:

s3.getObject( {
        Bucket: mybucket,
        Key:mykey
    }, function(err,data){
        console.log(data.Body.toString()) ;
    })

我检查了回调中的数据对象,发现数据缓冲区的类型是unit8Array。我猜这就是原因。有谁知道如何控制缓冲区的类型为String?还是上传期间需要更改的内容?

1 个答案:

答案 0 :(得分:0)

这是在用java编写的文件上传端解决的。它使用AmazonS3EncryptionClientBuilder而不是AmazonS3ClientBuilder。因此,下载加密后会返回数据,这就是为什么它的乱码。所以它不是由缓冲区类型

引起的