我正在为当前项目使用Node JS。我已经组装了一个注册/登录api和html页面。我正在使用MongoDb作为数据库。每个用户注册后,在其对象中都有一个名为“ video”的“键”,其中包含“ default”的初始值。然后,该用户将被重定向到一个页面,在该页面上,他们将被允许将视频文件上传到我的服务器。上载时,文件名需要替换“默认”值。
这是我在其中注册用户注册信息到我的数据库中的代码。它位于一个名为routes.js的文件中。
app.post('/signup', function(req, res){
AM.addNewAccount({
name : req.body['name'],
email : req.body['email'],
user : req.body['user'],
pass : req.body['pass'],
video : 'default'
}, function(e){
if (e){
res.status(400).send(e);
} else{
res.status(200).send('ok');
}
});
});
此代码只是函数的一小部分,我使用module.exports导出到其他文件。我打算将用户名保存在变量中,然后将其发送到我的upload.js文件中。在这里,我计划使用用户名遍历数据库,并使用文件名更新“默认”值。
这是名为upload.js的文件中的文件上传代码:
app.post('/upload',function(req,res){
console.log(req.files);
if(req.files.upfile){
var file = req.files.upfile,
name = file.name,
type = file.mimetype;
var uploadpath = __dirname + '/uploads/' + name;
file.mv(uploadpath,function(err){
if(err){
console.log("File Upload Failed",name,err);
res.send("Error Occured!")
}
else {
console.log("File Uploaded",name);
res.send('Done! Uploading files')
}
});
}
else {
res.send("No File selected !");
res.end();
};
})
如何将用户名值传递给upload.js文件,以便更新“视频”键?我是Node JS的新手,任何帮助都值得赞赏。如果有人可以建议一种全新的方法,那也很好。如果有人可以列出此方法的所有问题,那也很好。谢谢!