确定节点js

时间:2015-05-14 00:21:50

标签: node.js pdf amazon-s3 buffer fs

我想知道是否有一种简单的方法来确定节点js中readStream的长度。我正在写一个工作人员将PDF上传到S3,它正在解决错误:'无法确定[对象PDF文档]的长度。 pdf是一个可读的流(我现在可以将它传送到内存中的文件并查看生成的pdf)。

我正在考虑做的一些事情: 1.将整个pdf管道到内存(例如缓冲区),然后在该缓冲区上调用fstat以确定大小。

  1. 创建一些动态找到大小的方法,因为我通过它传输pdf。
  2. 或者有更简单的方法吗?提前致谢所有建议!

    这是对S3的调用。可读的pdf流称为doc:

    return Q.ninvoke(s3, 'putObject', {Bucket: 'REDACTED', Key: obfuscatedFN, Body: doc, ContentType: 'application/pdf'})
         .then(function() {
               console.log("Successfully uploaded data to myBucket/myKey");
               return Q(true);
         })
         .fail(function(err) {
               console.log(err);
         })
    

1 个答案:

答案 0 :(得分:12)

S3有另一种名为“上传”的方法。您可以在不需要知道长度的地方使用。