在Express.js中获取FormData可以通过使用中间件来实现。首先,需要安装并引入multer
模块,它是一个处理文件上传的中间件。然后,创建一个multer
实例,并配置上传的目标文件夹。最后,使用multer
中间件来处理FormData,并从req.body
中获取表单数据。
以下是具体的步骤:
multer
模块:npm install multer
multer
模块:const multer = require('multer');
multer
实例,并配置上传的目标文件夹:const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'uploads/'); // 上传的文件将保存在uploads文件夹中
},
filename: function (req, file, cb) {
cb(null, file.originalname); // 保留原始文件名
}
});
const upload = multer({ storage: storage });
multer
中间件来处理FormData:app.post('/upload', upload.single('file'), function (req, res, next) {
// 处理上传的文件
// req.file 包含上传的文件信息
// req.body 包含其他表单字段的值
});
在上述代码中,upload.single('file')
表示只处理名为file
的表单字段,你可以根据实际情况修改。
通过以上步骤,你就可以在Express.js中获取FormData了。注意,为了使req.body
中包含表单字段的值,你还需要在应用中使用body-parser
中间件。
推荐的腾讯云相关产品:腾讯云对象存储(COS)
领取专属 10元无门槛券
手把手带您无忧上云