私が使ったすべての戦略に対して空の配列やオブジェクトを与えるreq.filesの表現形式です。ExpressとMulterのアップロードに関する問題 - req.filesは常に空です
と私のファイルフィールドは、multer内のmakemiddlewareオブジェクトによってファイルとして考慮されません。 (それをコンソール化し、フォーム提出はそこに行かない)。
私はミドルウェア、REQを通じてREQ処理の後、マルチパート/フォームデータとして
------WebKitFormBoundaryjcaOV7ABMw82oDRB
Content-Disposition: form-data; name="username"
Yash
------WebKitFormBoundaryjcaOV7ABMw82oDRB
Content-Disposition: form-data; name="email"
[email protected]
------WebKitFormBoundaryjcaOV7ABMw82oDRB
Content-Disposition: form-data; name="password"
yash
------WebKitFormBoundaryjcaOV7ABMw82oDRB
Content-Disposition: form-data; name="confirmPassword"
yash
------WebKitFormBoundaryjcaOV7ABMw82oDRB
Content-Disposition: form-data; name="profilePicture"
[object FileList]
------WebKitFormBoundaryjcaOV7ABMw82oDRB--
//Middleware
var uploadPath = path.join(__dirname, '../public/upload');
var upload = multer({
dest: uploadPath,
rename: function (fieldname, filename) {
return filename.replace(/\W+/g, '-').toLowerCase() + Date.now();
},
onFileUploadStart: function (file) {
console.log(file.fieldname + ' is starting ...');
},
onFileUploadData: function (file, data) {
console.log(data.length + ' of ' + file.fieldname + ' arrived');
},
onFileUploadComplete: function (file) {
console.log(file.fieldname + ' uploaded to ' + file.path);
}
});
//Route
router.route('/user/signmeup')
.post(function(req, res){
upload.array('profilePicture', 2)(req, res, (err) => {
console.dir(req.headers['content-type']);
if (err) {
console.log('err', err);
}else{
console.log('coming here'); console.log(req.files); console.log(req.body);
var reg = new Registration();
let args = { body : req.body, session : req.session };
reg.applyForMembership(args, function(err, result){
res.json(result);
});
}
});
});
を慰め[「コンテンツタイプ」]私のクライアント側の要求ペイロードは、以下の本やサービサー側req.headersのように見えてい.bodyとreq.filesは常に
coming here
[]
{ username: 'Yash',
email: '[email protected]',
password: 'yash',
confirmPassword: 'yash',
profilePicture: '[object FileList]' }
の下に、次のように印刷していることは、それはフロントエンドのフォーム処理および/またはmulterは私のアプリで設定されている方法の問題です。
これについてのご意見をお待ちしております。ここ数日間苦労していますが、何も問題なく動作しているようです。
おかげで、私は時間のためにこれで苦しんでいた Gjを
まだ解決策はありますか?もしそうなら、あなたは答えを加えることができますか? – Illep