j.e*_*mer 3 amazon-s3 sails.js skipper
目前我正在使用SailsJS创建自己的网络应用程序.我正在使用skipper-s3将文件上传到AWS S3.这是我的代码:
req.file('uploadFile').upload({
adapter: require('skipper-s3'),
key: 'KEY',
secret: 'SECRET',
bucket: 'BUCKET',
ACL: 'public-read'
}, function whenDone(err, filesUploaded) {
if (err) {
console.log(err);
return res.negotiate(err);
}
var pt = {
user: req.session.User.id,
agency: req.param('id'),
path: filesUploaded[0].extra.Location,
filename: filesUploaded[0].filename
};
Transaction.create(pt, function TransactionCreated(err, trans){
if(err) return next(err);
return res.ok({
files: filesUploaded,
textParams: req.params.all(),
trans: trans
});
})
});
Run Code Online (Sandbox Code Playgroud)
所以我已经将'path'和'original filename'放到了MongoDB中.但S3中的'文件名'已经用'随机名'改变了.那么,上传时是否可以更改为"原始文件名"?当用户想要下载时,OR会自动更改为"原始文件名"吗?
此致,John Elmer Semaya
在查看了船长文档后,我找到了有关saveAs选项的信息.只需将其放入内部req.file('name').upload即可使用您的原始名称或其他自定义名称进行保存.
这是一个例子:
var newFilename = req.file('uploadFile')._files[0].stream.filename;
req.file('uploadFile').upload({
adapter: require('skipper-s3'),
key: 'KEY',
secret: 'SECRET',
bucket: 'BUCKET',
ACL: 'public-read,
saveAs: newFilename //this is how you put custom name when upload file
},
...
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1634 次 |
| 最近记录: |