Я пытаюсь загрузить изображения в облачный сервис, используя интерфейс переднего плана и экспресс-сервер.Проблема в том, что я не могу правильно отправить изображение запроса на мой экспресс-сервер.
Вот как я готовлю изображение, чтобы отправить его позже:
var data = new FormData();
console.log(event.target.files[0]) // this prints FileObject succesfully
data.append('image', event.target.files[0]);
console.log(data) // this prints {} but i guess its natural since its FormData ??
this.imageToUpload = data;
Вот как я отправляю запрос:
axios.post('/api/courses/uploadImage',this.imageToUpload, {
headers: {
'Content-Type': 'multipart/form-data'
}
})
.then( (response) => {
alert(JSON.stringify(response));
})
.catch(function (error) {
console.log(error);
});
Теперь на стороне сервера req.body
пусто.
router.post("/courses/uploadImage",(req,res,next)=>{
console.log(req.body) // empty
var image = req.body;
cloudinary.uploader.upload(image, function(error, result) { console.log(result) });
})
Кроме того, что я действительно должен поставить в первый параметр (изображение в данном случае) uploader.upload
?