J'essaie d'utiliser un programme de téléchargement pour télécharger mes fichiers. Le code que j'utilise est le suivant
app.post('/photos',loadUser, function(req, res) {
var post = new Post();
req.form.complete(function(err, fields, files) {
if(err) {
console.log(err);
next(err);
} else {
ins = fs.createReadStream(files.file.path);
ous = fs.createWriteStream(__dirname + '/public/uploads/photos/' + files.file.filename);
post.filename=files.file.filename;
post.file=files.file.path;
util.pump(ins, ous, function(err) {
if(err) {
next(err);
} else {
post.save(function(err,docs) {
req.flash('info', 'information Saved');
res.redirect('/photos');
});
}
});
}
});
});
Lorsque je supprime la méthode loadUser, tout fonctionne bien, mais lorsque j'utilise la méthode loadUser
la méthode me donne une erreur. L'information console de l'erreur est :
Error: parser error, 0 of 4344 bytes parsed
at IncomingForm.write (/home/darhamid/node_modules/formidable/lib/incoming_form.js:141:17)
at IncomingMessage.<anonymous> (/home/darhamid/node_modules/formidable/lib/incoming_form.js:91:12)
at IncomingMessage.emit (events.js:67:17)
at HTTPParser.onBody (http.js:121:23)
at Socket.ondata (http.js:1349:22)
at TCP.onread (net_uv.js:312:27)
L'erreur est causée uniquement lorsque j'utilise la fonction loadUser, si je supprime la fonction loadUser, tout fonctionne bien. Je ne connais pas la raison de cette erreur et je suis bloqué. Quelqu'un peut-il m'aider ?