ノードエクスプレスでconnect-busboyを使用して写真をアップロードして登録フォームを作成しようとしました。私はマルチパート/フォームデータサーバーを使用してフォームの他のテキストフィールドを読み取ることはありません。誰か助けてください。ノードエクスプレスフォームの登録ファイルのアップロードが動作しません
私のヒスイのファイルは私の登録スクリプトは、
form(class='form-signin', action='/s/upload', method='POST', enctype='multipart/form-data')
input(type='text', name='classname', class='form-control', placeholder='Classname',required)
input(type='text', name='subject', class='form-control', placeholder='Subject',required)
input(type='text', name='chapter', class='form-control', placeholder='Chapter',required)
input(type='text', name='module', class='form-control', placeholder='Module',required)
input(type='text', name='name', class='form-control', value = user.username,required)
input(type='file', name='thumbnail', class='form-control')
input(type='text', name='regid', class='form-control',value = "#{user._id}")
button(class='btn btn-lg btn-primary btn-block', type='submit') Register
span.clearfix
#message
if message
h1.text-center.error-message #{message}
で、
router.post('/upload', function(req, res, next)
{
console.log("help..........."+req.body.chapter);
console.log("Got a POST request for the homepage");
var ar =dirname+'/uploads/'+req.body.thumbnail;
var person = new Upd({
classname: req.body.classname,
subject: req.body.subject,
chapter: req.body.chapter,
module: req.body.module,
name: req.body.name,
thumbnail: req.body.thumbnail,
filedtls: ar,
regid: req.body.regid
});
person.save(function (error, data){
if(error) {throw error; }
});
var fstream;
req.pipe(req.busboy);
req.busboy.on('file', function (fieldname, file, filename) {
console.log("Uploading: " + filename);
console.log("Uploading: " + dirname);
fstream = fs.createWriteStream(dirname + '/uploads/' + filename);
file.pipe(fstream);
fstream.on('close', function() {
console.log("Upload Finished of " + filename);
console.log("file lo " + ar);
res.redirect('/home'); //where to go next
});
});
});
通常、それは、マルチパート/フォームの - データは複数の部分/フォームデータではありません。また、それを行うために使用するコードを私たちに教えてもらうか、私たちはあなたを助けることができません。 – jaumard