Получить значения FormData на стороне сервера? - PullRequest
0 голосов
/ 04 марта 2019

Есть ли способ получить FormData, отправленный со стороны внешнего интерфейса на внутреннюю сторону для управления его значениями?

Я имею в виду что-то вроде этого:

onFormSubmit = async (event) => {
    event.preventDefault();
    const { imageFile, currentGroupId } = this.state;
    var formData = new FormData();
    formData.append('groupImage', imageFile);
    formData.set('groupId', currentGroupId);
    const config = {
      headers: {
        'content-type': 'multipart/form-data'
      }
    };
    await axios.post('/fileUpload/group', formData, config);
  }

И получить такие значения, как:

uploadFile(req, res) {
  const { uploadsPath } = this.porperties;
  const { formData } = req.body;
  console.log(formData.get('groupId'));
}

Или какие альтернативы я могу выбрать?

1 Ответ

0 голосов
/ 04 марта 2019

Я вижу, что вы загружаете файлы с внешнего интерфейса на сервер, попробуйте использовать такой модуль, как multer .

let multer = require('multer');
let upload = multer();

 var storage = multer.diskStorage({
     destination: function (req, file, cb) {
      cb(null, '/tmp/my-uploads') // your path
    },
    filename: function (req, file, cb) {
    cb(null, file.fieldname + '-' + Date.now())
    }
 });

 var upload = multer({ storage: storage })

 app.post('/send', upload.single('file'), (req, res) => {
     let formData = req.body;
     console.log('form data', formData);
     res.sendStatus(200);
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...