在 multer 中重命名上传的文件

renaming uploaded files in multer

这里我尝试将这两个文件重命名为 file1file2,但是这两个文件都重命名为 file2.

HTML

<input type="file" name="file1" file-model = "file1"/>
<input type="file" name="file2" file-model = "file2"/>
<button ng-click = "uploadFile()">UPLOAD FILES</button>

服务器

app.use(multer({
    dest: 'uploads/',
    rename: function(file2, file2) {
        return "file1"
    },
    rename: function(file2, file2) {
        return "file2"
    }

}));

当我返回 return file1+"file1"return file2+"file2" 时,文件重命名为 originalnamefile1originalnamefile2。 尝试了几件事,但无法做对。我的nulter版本是0.1.6

拥有多个 rename func 没有任何意义,最后一个总是会覆盖以前的。看看下面的示例

app.use(multer({
    dest: 'uploads/',
    rename: function(fieldname, filename) {
        //check fieldname
        if(fieldname === 'file1') {
            //be aware, no file extension added here
            //if you want to add ext - use
            //return 'file1.' + filename.split('.').pop();
            return 'file1';
        } else if (fieldname === 'file2') {
            return 'file2';
        //do something when fieldname is different
        } else {
            //generate some id
            return Math.round(Math.random() * 1000);
        }
    }
}));