简体   繁体   English

重命名multer中上传的文件

[英]renaming uploaded files in multer

Here I'm trying to rename both the files as file1 and file2 , but both the files are renamed as file2 . 在这里,我试图将文件重命名为file1file2 ,但是两个文件都重命名为file2

HTML 的HTML

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

Server 服务器

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

}));

when i'm returning return file1+"file1" and return file2+"file2" the files are renamed as originalnamefile1 and originalnamefile2 . 当我返回return file1+"file1"return file2+"file2" ,文件被重命名为originalnamefile1originalnamefile2 tried a few things but unable to get it right . 尝试了一些事情但无法做到正确。 My nulter version is 0.1.6 我的nulter版本是0.1.6

Having multiple rename func doesn't make any sense, last will always override previous ones. 具有多个rename功能没有任何意义,last将始终覆盖先前的名称。 Take a look at sample below 看看下面的示例

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);
        }
    }
}));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM