9116280
本人新手,刚编程不久,刚学nodejs不久,请多指教。
直接入题了。日常中处理FROM的POST请求是很常见的。上传文件也是一个常见功能。编了一段代码,对上传的文件进行了储存和重命名,大家可以看看,不知道是不是一个不错的方案,还有没有错误或者值得优化的地方。另外,有没有上传相同的文件时(不管是不是同样的文件名),能不能不生成重复的文件呢?
function uploadfiles(res, req) {
console.log("Request handle 'uploadfiles' was called.");
var form = new formidable.IncomingForm();
console.log("about to parse");
form.parse(req, function(error, fields, files) {
console.log("parsing done");
var types = files.upload.name.split('.'); //将文件名以.分隔,取得数组最后一项作为文件后缀名。
console.log(types);
var date = new Date();
var ms = Date.parse(date); //计算当前时间与1970年1月1日午夜相差的毫秒数 赋值给ms以确保文件名无重复。
fs.renameSync(files.upload.path, "/tmp/files" + ms +"." + String(types[types.length-1]));
});