Nodejs无法识别正文解析器

时间:2015-03-07 21:10:46

标签: node.js express body-parser

我正在尝试开发一个nodejs应用程序,但是当我尝试使用正文解析器时,会出现以下错误:

"错误:大多数中间件(如bodyParser)不再与Express捆绑在一起,必须单独安装。请参阅https://github.com/senchalabs/connect#middleware。"

这是我的代码:

var http = require('http');
var express = require('express');
var app = express();
var bodyParser = require('body-parser');


app.use(express.static(__dirname +'/views'));
app.use(express.bodyParser());

//Start server
var server = http.createServer(app).listen(8000, function(request,     response){
app.get('/', function(req, res){
    res.sendfile('views/htmls/main.html');
})
app.get('/nuevo', function(req, res){
    res.sendfile('views/htmls/nuevo.html');
})
app.post('/', function(req,res){
res.send('Name"' + req.body.title + '".');
})
});
console.log('Listening on http://127.0.0.1:8000');

添加该行时出现错误:    app.use(express.bodyParser());

如果我评论它,我没有错误。

我已经尝试过了:      npm install body-parser 和     npm install -g body-parser

仍然无法修复。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

尝试将其更改为

app.use(bodyParser());

您发布的链接解释为不再附带bodyParser,您已正确使用它,但您尝试将其引用为express.bodyParser()而不仅仅是bodyParser()。

答案 1 :(得分:0)

打开你的控制台的所有拳头并写下:

npm init 

它会询问一些东西(如果你想要保留它们或插入一些随机数据) 接下来尝试

npm install body-parser

PS:如果要在package.json的依赖项中添加条目,请添加选项--save

有关详细信息,请visit the official npm website and read this articlebody parse page

PS:别忘了添加var myParser = require("body-parser"); 对你的代码,所以节点JS将包括库。