我正在使用Alamofire(在iOS中)进行简单的POST请求,并使用express在节点中处理它。 我在iOS中的代码:
let boop: [String: AnyObject] = ["username":"fakeuser"];
Alamofire.request(.POST,"http://localhost:3000/test", parameters: boop, encoding: .JSON)
这是我在节点中的代码:
var app = require('express')();
var http = require('http').Server(app);
app.post('/test', function(req, res){
console.log("THE SERVER HAS RECEIVED THE POST! \n")
console.log(req.body);
});
http.listen(PORT, function(){
console.log('listening on *:3000');
});
我的终端控制台打印出来"服务器已收到帖子" ,所以我知道帖子实际上是触发的。问题是,它不是记录req.body,而是打印出" undefined"。我环顾四周,它似乎是一个身体解析器"需要配置的东西,但显然是新版本的快递已经过时了。所以我迷失了该怎么做。
有什么建议吗?
答案 0 :(得分:2)
我很确定你需要将身体解析器添加到你的快递应用程序来解析JSON。
const bodyParser = require('body-parser');
app.use(bodyParser.json());