node.js - 在后端获取 FormData 值?
问题描述
有没有办法从后端的前端发送 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'));
}
或者我可以去哪些替代品?
解决方案
我看到您正在将文件从前端上传到服务器尝试使用像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);
});
推荐阅读
- python - numpy(setup.py)的构建轮......错误
- angular - 如何在 observable 中等待异步函数?
- go - 调用 Google Apps 脚本
- javascript - 是否可以在设备级别而不是浏览器级别使用 javascript 生成指纹?
- data-structures - 通过删除/更新查找最小值的数据结构建议
- c - 在 C 的 sprintf 中添加 \
- javascript - 如何飞到反应传单中的位置
- npm - 无法在 WebStorm 中更改 npm 版本
- powerbi - Power Query (PowerBI) 解决多对多关系
- c# - 保存和加载场景统一