每当执行此get API时,我都会遇到此错误。我是node.js的新手,我真的迷路了,有人可以帮我看看我做错了吗?
app.get('/quote/:id', function(req, res) {
var results = [];
var userToken = [];
client1 = new pg.Client(connectionString);
client1.connect();
var query1 = client1.query('SELECT * FROM users WHERE access_token = $1', [req.body.access_token]);
query1.on('row', function(row){userToken.push(row);});
query1.on('end', function(result) {
client1.end();
if(userToken.length<1){
res.status(401).send("Unauthorized");
}
});
client2 = new pg.Client(connectionString);
client2.connect();
var query2 = client2.query('SELECT * FROM quotes WHERE quote_id = $1', [req.params.id]);
query2.on('row', function(row){results.push(row);});
query2.on('end', function(result) {
client2.end();
if(results.length<1){
return res.status(404).send({"error":"NOT FOUND"});
}
return res.status(200).send(JSON.stringify(results));
});
});
答案 0 :(得分:0)
问题是您无法多次拨打res.send
。当你这样做时它结束了响应。如果您需要向客户端发送更多数据,则创建一个数据对象(var data = {}
)并添加您需要的所有内容。一切都完成后,在底部打电话给res.status(statusCode).send(data)
。