画像をアップロードするための簡単な html フォームを作成しました。恐ろしいミドルウェアを使用して自分のイメージを処理しようとしています。
var form = new formidable.IncomingForm();
var filename = req.body.pid + ".jpg";
//Formidable uploads to operating systems tmp dir by default
form.uploadDir = "/src/main/images"; //set upload directory
form.keepExtensions = true; //keep file extension
form.on('progress', function(bytesReceived, bytesExpected) {
if (bytesReceived > MAX_UPLOAD_SIZE) {
console.log('### ERROR: FILE TOO LARGE');
}
});
form.parse(req, function(err, fields, files) {
//Formidable changes the name of the uploaded file
fs.rename(files.fileUploaded.path, filename);
});
すべてのファイルがjpgファイルになるわけではないため、ファイルの名前変更を正しく処理する方法について疑問があります。しかし、ファイルの名前を標準の名前に変更する必要があります。
また、form.onを使ってファイルサイズを制限したいです。これを行うより良い方法はありますか?