无法从快递中的帖子方法获取信息

时间:2016-07-28 22:20:11

标签: javascript node.js express post

我制作了超级简单的代码,仅用于从客户端接收数据。

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.json());
var PORT = 80;

app.get('/',function(req,res){
res.send('<form action="/" method="post"> <input type="text"name="firstname" value="Mickey"><input type="submit" value="Submit"> </form>');
});

app.post('/', function (req, res) {
console.log(req.body.firstname);
res.send('POST request to the homepage');
});

app.listen(PORT, () => console.log("Listening on port "+PORT));

就是这样。但是当我运行它时,它说req.body.firstname是未定义的。 我做错了什么?

1 个答案:

答案 0 :(得分:2)

要解析表单数据,您必须使用bodyParser.urlencoded中间件。

在处理POST请求之前,将以下内容添加到代码中:

app.use(bodyParser.urlencoded({ extended: false }));