繁体   English   中英

Express JS不发送JSON来响应发布请求

[英]Express JS not sending JSON in response to post request

我正在编写一个与JSON的ExpressJS后端通信的AngularJS应用程序。 我的server.js文件如下所示:

var express = require('express'),
    app = express();

//Express 4
app.use(express.static(__dirname, '/'));

app.get('/questions', function(req, res) {
    res.json(questions);
});

app.post('/new_question', function(req, res){
    res.json(req.body);
    //questions.unshift(req.body);
});

app.listen(8080);

当我: curl -H "Content-Type: application/json" -d '{text: "text", votes: 0 }' localhost:8080/new_question我什么也没回来。 我在这里想念什么? 我觉得这一定是非常愚蠢的事情。

如注释中所指出的,您的POST将需要一个bodyparser中间件。

但是,我看不出您的GET有什么问题。 也许问题是没有有效的json? 简单尝试

res.send(questions,200);

看看会发生什么。

另外,使用记录器获取有关您的问题的更多信息:您得到哪个请求状态? 等等...

app.use(express.logger());

如果您不想记录静态内容请求,请将其放在静态调用之后。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM