Node.js获取json发布数据

时间:2013-09-18 09:22:08

标签: javascript node.js express

我在服务器上使用express.js.从我的客户那里我试着:

$http.post("url/send", angular.toJson(
    {
        uploads: uploads, 
        desc: desc
    }
));

在服务器上我想读取这些数据:

send function(req, res, next){

};

如何从req对象中提取已发布的json字符串?

3 个答案:

答案 0 :(得分:3)

在Express中,在configure中添加bodyParser中间件:

app.configure(function() {
  app.use(express.bodyParser());
});

然后在任何请求中,req.body将包含带有正文数据的JSON:

app.post('/items', function(req, res, next) {
  console.log(req.body);
});

答案 1 :(得分:2)

您需要在快速设置中添加bodyParser,如下所示

app.configure(function () {
    app.use(express.bodyParser({ keepExtensions: true }));
});

然后在你的路线/中间件中,你只需要req.body

中的数据

答案 2 :(得分:0)

以上解决方案已在Express 4中弃用。请注意,configure不再用于设置中间件。其次,bodyParser不再是Express的一部分。相反,bodyParser是其自己的实体包,应单独调用https://www.npmjs.com/package/body-parser  代码:

    app.use(express.bodyParser());
    });

在Express 4中:

app.use(bodyParser()); 

(简单得多!)