formidable Node.js模块,用于解析表单数据.
下载并引入
npm i formidable --save
const formidable = require('formidable')
在路由中使用
app.post('/student',(req,res) => {
//创建一个form对象
const form = new formidable.IncomingForm();
//使用form.parse进行接收
//req请求来的所有请求信息, 从req中解析,有err抛出err,
// 解出来的常规表单域放在fields中,
// 解出来的文件放在files中
form.parse(req,function(err,fields,files){
console.log(fields);
});
});
formidable上传文件的使用和进行表单接收数据的使用方法基本相同,但是这里有两个非常重要的区别
form中必须设置enctype以及表单中的上传控件必须设置name属性。
//form中必须有enctype属性
<form action="/student" enctype="multipart/form-data" method="post">
<p>
<input type="file" name="fileUpload"> //这里必须有name属性
</p>
<p>
<input type="submit" value="上传" id="btn2">
</p>
</form>
网友评论