使用node/express的req.body中的html multipart/form-data错误

cs0*_*iz1 1 html forms node.js express

我正在使用node、express、html,并且我正在尝试使用html表单将a发布到我的服务器端。问题是我将 {} 作为我的 req.body。

我的html表单如下:

    <form method = 'post' action='get_name' enctype="multipart/form-data">
      <input type="text" name="form_name"><br>
      <input type="submit" value="Upload name">
    </form>
Run Code Online (Sandbox Code Playgroud)

我在 node.js 文件的开头使用以下内容:

app.use(bodyParser.urlencoded({limit:'5mb', extended:false}));
app.use(busboy());
Run Code Online (Sandbox Code Playgroud)

我的 app.post 如下:

app.post('/get_name',function(req, res, next){
        console.log("the name of the form is : ", req.body);
        res.redirect('/admin');
});
Run Code Online (Sandbox Code Playgroud)

当我试图获取 req.body.form_name 时,我得到了未定义。我无法找出我的代码有什么问题。欢迎任何建议。:)

sct*_*skw 5

如果您要使用 Busboy,您应该遵循文档:

https://github.com/mscdex/busboy

否则,bodyParser() 不支持多部分表单数据。我个人推荐这个库,因为它很简单:

https://www.npmjs.com/package/multer

这将按照您打算使用的方式填充 req.body 。