I'm using nodejs, REACT, express, axios.. I want to make upload function, but i can't. when i upload file, server cannot parse the uploaded file.(only shows {} log)
below is my frontend code
when user click UPLOAD button on form element, 'handleSubmit' function is called, and 'handleSubmit' calls 'fileUploadRequest' function.
In 'fileUploadRequest' function, everything is good. I can see infomations of attached file.
<form onSubmit={this.handleSubmit} encType='multipart/form-data'>
<input type="file" onChange={this.handleChange}/>
<input type="submit" value="UPLOAD"/>
</form>
export function fileUploadRequest(username, uploadFile, uploadFileName) {
return (dispatch) => {
dispatch(fileUpload());
let formData = new FormData();
formData.append('fileName', uploadFileName);
formData.append('fileHandler', uploadFile);
return axios.post('/upload/upload', {formData})
.then((response) => {
dispatch(fileUploadSuccess());
}).catch((error) => {
dispatch(fileUploadFailure());
});
};
}
below is backend code.
router.post('/upload', (req, res) => {
console.log(req.body.);
var form = new formidable.IncomingForm();
form.parse(req, (err, fields, files) => {
console.log('parse');
console.log(fields);
console.log(files);
});
});
on req.body log, I can see only '{ formData: {} }' log...
'fields' and 'files' are all '{}' on log
How can i parse attached file on server? Please let me know T_T
via Jihwan Kim
No comments:
Post a Comment