作者:ccsv0601604 | 来源:互联网 | 2023-09-08 19:44
Update:Forfuturereference,Amazonhavenowupdatedthedocumentationfromwhatwasthereattime
Update: For future reference, Amazon have now updated the documentation from what was there at time of asking. As per @Loren Segal's comment below:-
更新:为了以后的参考,Amazon现在已经更新了文档,从当时的要求。根据@Loren Segal的评论:-
We've corrected the docs in the latest preview release to document this parameter properly. Sorry about the mixup!
我们在最新的预览版中修改了文档,以正确地记录这个参数。对不起关于混合!
I'm trying out the developer preview of the AWS SDK for Node.Js and want to upload a zipped tarball to S3 using putObject
.
我正在为Node试用AWS SDK的开发者预览版。需要使用putObject将压缩的tarball上传到S3。
According to the documentation, the Body
parameter should be...
根据文档,Body参数应该是…
Body - (Base64 Encoded Data)
主体- (Base64编码数据)
...therefore, I'm trying out the following code...
…因此,我正在尝试下面的代码……
var AWS = require('aws-sdk'),
fs = require('fs');
// For dev purposes only
AWS.config.update({ accessKeyId: 'key', secretAccessKey: 'secret' });
// Read in the file, convert it to base64, store to S3
fs.readFile('myarchive.tgz', function (err, data) {
if (err) { throw err; }
var base64data = new Buffer(data, 'binary').toString('base64');
var s3 = new AWS.S3();
s3.client.putObject({
Bucket: 'mybucketname',
Key: 'myarchive.tgz',
Body: base64data
}).done(function (resp) {
console.log('Successfully uploaded package.');
});
});
Whilst I can then see the file in S3, if I download it and attempt to decompress it I get an error that the file is corrupted. Therefore it seems that my method for 'base64 encoded data' is off.
我可以在S3中看到这个文件,如果我下载它并尝试解压缩它,我就会得到一个文件被损坏的错误。因此,我的‘base64编码数据’的方法似乎是关闭的。
Can someone please help me to upload a binary file using putObject
?
谁能帮我用putObject上传一个二进制文件吗?
3 个解决方案