0
NodeJS 앱에서 body-parser, express 및 multer를 사용하고 있습니다. 이미지를 업로드하고 가입 양식에 몇 개의 텍스트 필드를 업로드해야합니다. 나는 이것을 위해 멀테를 사용하고있다. 정확히 여기 같은 것을 시도했다. - https://stackoverflow.com/questions/35847293/uploading-a-file-and-passing-a-additional-parameter-with-multer노드 JS에서 멀터를 사용하여 이미지 및 텍스트 업로드
그러나 나는 req.body에 빈 객체를 얻는다. 대상 폴더에 파일을 만들지 만 req.files.forEach 메서드는 빈 결과를 기록합니다.
HTML을 프론트 엔드 코드
<form id="form" enctype="multipart/form-data" action="/profile" method="post" >
<label>Name</label>
<input type="text" placeholder=" Name" name="name" id="name" class="form-control">
<label>Logo</label>
<input type="file" placeholder="Logo" name="logo" id="logo" class="form-control">
<button id="addform" type="submit" class="btn btn-primary">Add Profile</button>
</form>
서버 측 코드 : 노드에서
app.post('/profile', function(req, res) {
var storage = multer.diskStorage({
destination: __dirname+'/file/uploads/'
});
var upload = multer({ storage : storage}).any();
upload(req,res,function(err) {
if(err) {
console.log(err);
return res.end("Error uploading file.");
} else {
console.log(req.body);
console.log(req.files);
req.files.forEach(function(f) {
console.log(f);
// and move file to final destination...
});
res.end("File has been uploaded");
}
});
});
로그 출력 :
012 여기 내 코드입니다{}
[]
나는 정확한 코드를 복사하여 시험해 보았다. 그리고 본체와 파일이 콘솔에 로깅되어 모든 것이 잘 작동합니다. 그래서, 다른 코드의 문제일까요? 어쩌면 미들웨어일까요? 이것이 도움이되기를 바랍니다. –
귀하의 문제는 해결 되었습니까? – Sagar
예, 실제로 버튼 클릭을 참조하는 동안 '#'을 추가하는 것을 잊어 버렸습니다. – Anirudh