我正在尝试上传一个格式如下的文件
<input type="file" name="collateral" />
<input type="hidden" name="id" value="ABCDEFG" />
<input type="submit" value="Upload Image" name="submit">
我想将文件重命名为 id 输入中的名称 (ABCDEFG)。由于我无法通过重命名访问 req.body:function(fieldname, filename),我想知道我将如何实现这一目标?
最佳答案
尝试将文件放在 POST 请求负载的最后。
然后你应该能够通过这个回调访问req.body
:
var multer = require('multer');
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './public/uploads/')
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now())
// access req.body and rename file
}
});
var upload = multer({ storage: storage });
关于node.js - Multer:如何在 req.body 参数后命名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30024339/