登录
注册
node.js 学习社区
求教:怎么实现当一个用户上传图片时,后台把文件保存在以这个用户名为命名的文件夹里

nodeczt

2015-05-14 21:30

我用的是express 4.12.1 multer,用cookie作为用户名测试

回复 · 1

  • function mkdirs(dirpath, mode, callback) {
        fs.exists(dirpath, function(exists) {
            if(exists) {
                    callback(dirpath);
            } else {
                    mkdirs(path.dirname(dirpath), mode, function(){
                            fs.mkdir(dirpath, mode, callback);
                    });
            }
        });
    }
    
    var user_id=req.cookie.user_id;
    var new_dir ='./static/'+user_id+'/';
    
    var fs = require('fs');
    fs.readFile(req.files.imgFile.path, function(err, data){
    	var new_name = 'tmp.'+req.files.imgFile.path.split('.').pop();
    	mkdirs(new_dir, 0755, function(){
    	          fs.writeFile(new_dir+new_name, data, function(err){
    	                 
    	          });
    	});
    }); 

    3

发表回复

你可以在回复中 @ 其他人