J'utilise Multer pour créer un système de fichiers upload. J'ai suivi les instructions de la page Github mais ça ne marche pas. Je reçoisLe téléchargement Multer n'est pas une fonction
const express= require('express');
const app = express();
const multer = require('multer');
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, '/uploads');
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now());
}
});
const upload = multer({ storage: storage });
app.post('/editPhoto',upload.single('avatar'),function(req,res,next){
upload(req,res,function(err){
if(err){
res.json({success:false,message:err});
}
else{
res.json({success:true,message:"Photo was updated !"});
}
});
});
Je reçois TypeError: upload is not a function
Qu'est-ce que je fais mal?
EDIT
Je l'ai fait comme vous avez dit et comme le doc dit.
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads');
},
filename: function (req, file, cb) {
cb(null, file.fieldname + '-' + Date.now());
}
});
app.post('/editPhoto',function(req,res,next){
var upload = multer({ storage:storage}).single('userPhoto');
upload(req,res,function(err){
console.log(req.file);
if(err){
res.json({success:false,message:err});
}
else{
res.json({success:true,message:"Photo was updated !"});
}
});
});
req.file est définie
et quand j'essaie comme ça
var upload = multer({ storage:storage});
app.post('/editPhoto',function(req,res,next){
upload(req,res,function(err){
console.log(req.file);
if(err){
res.json({success:false,message:err});
}
else{
res.json({success:true,message:"Photo was updated !"});
}
});
});
je reçois le téléchargement est pas une fonction
S'il vous plaît lire multer doc correctement https://www.npmjs.com/package/multer soit vous devez utiliser 'upload.single ('avatar')' ou 'upload (req, res, function (err) { '.' upload.single ('avatar') 'est déjà téléchargé votre fichier à la déstionation maintenant vous pouvez accéder à ce fichier à l'intérieur de votre route avec le' req.file' – Aabid
Regardez cette réponse https://stackoverflow.com/a/45755235/7635845 –
S'il vous plaît regarder la modification –