我制作了超级简单的代码,仅用于从客户端接收数据。
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是未定义的。 我做错了什么?
答案 0 :(得分:2)
要解析表单数据,您必须使用bodyParser.urlencoded
中间件。
在处理POST请求之前,将以下内容添加到代码中:
app.use(bodyParser.urlencoded({ extended: false }));