新版express中没有了bodyParser,以及methodoverride等方法.然后应该怎么使用?


RT,
原来是这样用的:


 var express = require('express');
var app = express();
app.use(express.bodyParser());

现在它说bodyParser已经不支持了,于是我又安装了bodyParser模块,然后这样写:


 var express = require('express');
var bodyParder = require('body-parser');
var app = express();
app.use(bodyParder());

结果是不对的.不能正确解析到post请求内容.
请问应该如何处理呢?

node.js

凡人红豆汤 10 years, 4 months ago

可以这样写:


 app.use(bodyParser.urlencoded());

然后就能直接使用urlencoded()的功能了。
详见: http://stackoverflow.com/questions/24330014/bodyparser-is-deprecated-express-4

时空穿越者 answered 10 years, 4 months ago

通常 POST 内容的格式是 application/x-www-form-urlencoded , 因此要用下面的方式来使用:


 app.use(require('body-parser').urlencoded({extended: true}))

见:

法鲁克总监 answered 10 years, 4 months ago

Your Answer