Node Express загрузить файл с дополнительными данными - PullRequest
1 голос
/ 04 апреля 2019

Я новичок в Node JS, который хочет создать Rest API для загрузки изображения и сталкивается с этой проблемой.

Я хочу создать метод публикации с несколькими файлами и дополнительными данными из входных данных.Это мой код:

index.js:

app.post('/upload-photos', upload.array('photos'), function (req, res) {
  const uploadInfo = req.files.map(file => {
    return {
      sourceName: file.originalname,
      newName: file.filename
    };
  });
  res.send(uploadInfo);
});

Моя проблема заключается в том, что я хочу добавить некоторые данные формы, такие как (имя, адрес, телефон), имееткто-нибудь еще испытал это, пожалуйста, помогите мне.

Спасибо.

1 Ответ

2 голосов
/ 04 апреля 2019

При использовании multer дополнительные поля доступны через req.body.

app.post('/upload-photos', upload.array('photos'), function (req, res) {
  const { name, address, phone } = req.body;

  const uploadInfo = req.files.map(file => {
    return {
      sourceName: file.originalname,
      newName: file.filename
    };
  });
  res.send(uploadInfo);
});

В вашей форме:

<form action="/upload-photos" method="post" enctype="multipart/form-data">
  <input type="file" name="photos" multiple />
  <input type="text" name="name" />
  <input type="text" name="address" />
  <input type="text" name="phone" />
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...