【发布时间】:2019-07-09 11:44:37
【问题描述】:
当收到对不存在记录的请求时,我正在尝试将 404 状态发送回 Web 客户端。
我正在使用 Express 和 MongoDB。使用 Advanced Rest Client 测试。
代码:
app.get('/api/courses/:id', (req, res) =>
{
dbo.collection("courses").findOne({ id: parseInt(req.params.id) }, function(err, result) {
console.log(result);
if (err) return res.status(400).send(err);
if (!result) { console.log('Null result sending 404'); return res.status(404); }
res.send(result);
});
});
如果客户端发送了一个有效的 id: 则记录按预期返回。
节点控制台:
{ _id: 5d23e6a8c922d263376442c1, id: 1, name: 'Course 1' }
客户:
{
"_id": "5d23e6a8c922d263376442c1",
"id": 1,
"name": "Course 1"
}
当客户端发送无效 id 时:控制台显示消息已发送,但客户端一直等待,直到我停止/重置服务器。
节点控制台:
null
Null result sending 404
【问题讨论】:
标签: node.js