Я не могу загрузить 2 файла используя multer - PullRequest
0 голосов
/ 23 января 2019

У меня есть 2 файла (1 видео и 1 изображение), и я хочу загрузить его на свой сервер, используя multer. Это мой код реакции:

const data = new FormData();
data.append('banner', this.state.banner);
data.append('preview', this.state.preview);

axios.post('/lesson', data).then(() => {})
<div>
  <input type="file" id='file1' onChange={this.handleUploadFile1} />
  
  <input type="file" id='file2' onChange={this.handleUploadFile2} />
</div>

А вот мой код сервера:

router.post('/lesson', upload.single('banner'), upload.single('preview'),controller.addLesson)

Тогда я получил эту ошибку:

MulterError: Неожиданное поле

Пожалуйста, помогите мне, как я могу решить эту проблему

1 Ответ

0 голосов
/ 23 января 2019

Вы должны использовать upload.any() или upload.array() вместо upload.single().

Также вы можете сделать что-то вроде этого:

let multerWithFields = upload.fields([{ name: 'banner', maxCount: 1 }, { name: 'preview', maxCount: 1 }]) 
router.post('/lesson', multerWithFields, controller.addLesson) 

См. Документы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...