1
我想知道什么样的内容类型请求req
支持app.post('/',function(req,res))
。我从HTML表单发送数据。它是否一定是JSON格式,还是可以直接从表单发送?expressJS的请求体的类型
我已经将json格式的数据从表单发送到服务器,但是当我访问req.body.{name attribute of inout element}
时,它给出了未定义的错误无效属性。
我想知道什么样的内容类型请求req
支持app.post('/',function(req,res))
。我从HTML表单发送数据。它是否一定是JSON格式,还是可以直接从表单发送?expressJS的请求体的类型
我已经将json格式的数据从表单发送到服务器,但是当我访问req.body.{name attribute of inout element}
时,它给出了未定义的错误无效属性。
Express支持这两种格式。但是,它可以工作之前,你需要使用bodyParser
中间件,否则req.body
不会填充:
app.use(express.bodyParser());
这里有一个最小的应用与接受张贴到它的形式和JSON数据:
var express = require('express');
var app = express();
app.use(express.bodyParser());
app.post('/submit', function(req, res) {
res.send('You submitted: ' + JSON.stringify(req.body));
});
app.listen(3012);
您需要确保该bodyParser
中间件加载之前你的路由,否则要求提供给您的路线不会被bodyParser
中间件第一和y进行处理我们的路由处理程序将无法使用req.body
。
我也添加了那段代码,但它仍然不起作用 – 2013-03-12 17:41:39
我给我的答案添加了一个示例。 – robertklep 2013-03-12 18:17:01