我目前正在尝试学习如何使用MEAN堆栈,以及我在服务器上执行POST请求时遇到问题。
这是我的server.js脚本。
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.json());
app.get('/api/posts', function(req, res) {
res.json([
{
username: 'dickeyxxx',
body: 'node rocks!'
}
]);
});
app.post('api/posts', function(req, res) {
console.log('post received!');
console.log(req.body.username);
console.log(req.body.body);
res.send(201);
});
app.listen(3000, function() {
console.log("Server listening on", 3000);
});
我尝试使用curl向服务器发送请求。 GET请求顺利进行,但POST请求给我带来了很多麻烦。这是我的卷曲声明:
curl -v -H "Content-Type: application/json" -XPOST --data "{\"username\":\"dickeyxxx\",\"body\":\"node rules!\"}" http://localhost:3000/api/posts
我找不到HTTP 404且无法发布/ api / post
我尝试重启我的server.js脚本,但无济于事。
我该如何解决这个问题?谢谢你的帮助。
答案 0 :(得分:3)
您在POST的开头缺少正斜杠。尝试
app.post('/api/posts', function(req, res) {
res.send(201);
});