node.js - 在 Multer-s3 上重命名上传的图像
问题描述
概述:
我正在使用S3让用户上传图片。我正在使用一种PUT
方法处理更新路由,该方法获取存储在存储桶中临时文件夹中的给定图像的 url,S3
并将其删除到图像文件夹中。
这是我的上传对象:
const upload = multer({
storage: multerS3({
s3: s3,
bucket: 'my-bucket',
contentType: multerS3.AUTO_CONTENT_TYPE,
acl: 'public-read',
key: function (request, file, cb) {
cb(null, folder + Date.now() + file.originalname);
}
}),
limits:{
fileSize: 1024 * 1024 * 5
},
fileFilter:fileFilter
});
在我正在使用的路由文件中:
upload.single('the_key_of_the_file')
问题:
此对象在上传新文件时有效,但不适用于更新文件(重命名文件)。
解决方案
可能它不是您需要在存储中传递的关键对象我的作品为此
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now()+path.extname(file.originalname))
}
推荐阅读
- r - 如果 R 中的其他值是 NA,我如何使某些行值 NA?
- python - 如何使用 sns.catplot 在箱线图顶部叠加散点图?
- java - TimeUnit.SECONDS.sleep(1) 的替代方案;SpigotMC/SpigotMC 事件未运行
- loops - 如何在我的 6800 汇编代码中编辑循环的最后一个字符
- forms - 创建一个计算输入复选标记数量的表单
- python - scipy覆盖警告过滤器?
- python-3.x - 如何在python中更改文件图标
- android - 中间有drawable的圆形按钮
- typescript - 如何通过带有 VueCLI/Typescript 的 mixin 传递模板
- sqlite - 根据 SQLite 中的 list_order 对具有路径索引的嵌套表进行排序