在后端获取FormData值?

问题描述 投票:0回答:1

有没有办法从后端端的前端端发送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'));
}

或者我可以选择哪种替代方案?

node.js reactjs express
1个回答
0
投票

我看到你正在使用像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);
  });
© www.soinside.com 2019 - 2024. All rights reserved.