Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法使用Node.js中的aws sdk加载PDF文档_Javascript_Node.js_Amazon S3_Aws Sdk - Fatal编程技术网

Javascript 无法使用Node.js中的aws sdk加载PDF文档

Javascript 无法使用Node.js中的aws sdk加载PDF文档,javascript,node.js,amazon-s3,aws-sdk,Javascript,Node.js,Amazon S3,Aws Sdk,我在将pdf文件上载到S3时遇到问题 我可以使用PDFkit创建pdf文件并将其存储在本地(我可以在浏览器中查看) 但是,当我尝试将它们上载到S3存储时,在浏览器中打开PDF时出现以下错误:无法加载PDF文档。。您可以查看: 我尝试了很多选择: 1) 使用Buffeer而不使用Buffer 2) 我上传.txt文件没有问题 3) 我甚至尝试将字符串作为正文值传递 在写这个问题之前,我做了一个小调查,发现了类似的问题: 不幸的是,这对我没有多大帮助…我在S3上传方面也遇到了同样的问题。我无法打

我在将pdf文件上载到S3时遇到问题

我可以使用
PDFkit
创建pdf文件并将其存储在本地(我可以在浏览器中查看)

但是,当我尝试将它们上载到S3存储时,在浏览器中打开PDF时出现以下错误:无法加载PDF文档。。您可以查看:

我尝试了很多选择: 1) 使用
Buffeer
而不使用
Buffer
2) 我上传
.txt
文件没有问题 3) 我甚至尝试将字符串作为
正文
值传递

在写这个问题之前,我做了一个小调查,发现了类似的问题:


不幸的是,这对我没有多大帮助…

我在S3上传方面也遇到了同样的问题。我无法打开PDF,它的大小只有几个字节(而不是几个KB)。我认为问题在于我没有等待写入流完成

这对我现在很有用:

document.pipe(fs.createWriteStream(文件名));
document.end();
document.on('end',function(){
fs.readFile(文件名、函数(错误、数据){
如果(错误){
控制台日志(err);
}
s3.上传({
桶:S3桶,
关键字:文件名,
正文:数据,
ContentType:'application/pdf',
acl:'私有',
contentDisposition:'附件',
服务器端加密:“AES256”
},函数(错误,数据){
如果(错误){
控制台日志(err);
}
});
});

});现在回答太晚了。 但是我的回答是,如果有人来到这个页面,他/她将得到正确的方法


我制作了一个git,它可以在任何类型的文件中完美运行。

您是如何修复它的?遇到同样的问题issue@tskittles查证
        fs.readFile('../pdf/' + fileName, 'utf8', function (err, contents) {
          const buf = new Buffer(contents, 'base64');
          // define params
          const params = {
            Bucket: 'pdf-twitter-bucket',
            Key: 'twitter/' + fileName,
            Body: buf,
            ContentType: 'application/pdf',
            ACL: 'public-read'
          };

          s3bucket.upload(params, function (err) {
            if (err) {
              console.log('error in callback');
              console.log(err);
            }
            res.end(
              'https://s3.us-east-2.amazonaws.com/pdf-twitter-bucket/twitter/' +
              fileName
            ); // send the link to s3
          });
        });