node 0.11 怎么获取post请求的body
node 0.11 怎么获取post请求的body
http.createServerfunctionreq, res{
};
req没有rawBody也没有body属性
感谢大家的帮助,已经解决,在不使用express库的情况下,原生的node去获取post的请求body只能用
http.createServerfunctionreq, res{
req.ondata,functiondata{
};
}.listenport;
https://github.com/expressjs/body-parser
你可以看一下这篇文章node.js 下依赖Express 实现post 4种方式提交参数
楼上所说body-parser 只支持:application/json, application/x-www-form-urlencoded, multipart/form-data这三种数据格式的请求包体的解析,对xml并不支持,当然,可以用xml2json将请求数据流转化为json进行处理。
1.首先,看看你是否引入了body-parser
而未调用,如果引入了跳过2
2.没有引入的话先引入
npm install body-parser --save
然后在程序里
var bodyParser = requirebody-parser;
3.引入后:
// parse application/x-www-form-urlencoded
app.usebodyParser.urlencoded{ extended: false } // parse application/json
app.usebodyParser.json
补充:
"application/x-www-form-urlencoded":窗体数据被编码为名称/值对。这是标准的编码格式。
"multipart/form-data":窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。
"text/plain":窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符 默认情况,这个编码格式是"application/x-www-form-urlencoded",不能用于文件上传;只有使用了"multipart/form-data",才能完整的传递文件数据,
4.配置完成后,如果数据形式是这样:
- username - password - ...
就可以:
var username = req.body.username;
var password = req.body.password;
发表评论