问题描述
这意味着截至 2014 年 6 月 19 日,使用bodyParser()
已被弃用。
app.use(bodyParser()); //Now deprecated
app.use(bodyParser.urlencoded());
app.use(bodyParser.json());
等等。
如果您仍然收到警告,urlencoded
则需要使用
app.use(bodyParser.urlencoded({
extended: true
}));
现在extended
需要显式传递配置对象键,因为它现在没有默认值。
如果您使用 Express >= 4.16.0,则在方法express.json()
和express.urlencoded()
.
解决方法
我正在使用 express 4.0,并且我知道正文解析器已从 express 核心中取出,我正在使用推荐的替换,但是我得到了
body-parser deprecated bodyParser: use individual json/urlencoded middlewares
server.js:15:12 body-parser deprecated urlencoded: explicitly specify
"extended: true" for extended parsing node_modules/body-parser/index.js:74:29
我在哪里可以找到这个所谓的中间件?还是我不应该收到这个错误?
var express = require('express');
var server = express();
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var passport = require('./config/passport');
var routes = require('./routes');
mongoose.connect('mongodb://localhost/myapp',function(err) {
if(err) throw err;
});
server.set('view engine','jade');
server.set('views',__dirname + '/views');
server.use(bodyParser());
server.use(passport.initialize());
// Application Level Routes
routes(server,passport);
server.use(express.static(__dirname + '/public'));
server.listen(3000);