我创建了一个后端路径来获取带有特定字母的游戏。下面您可以找到我创建的两条路线:
router.get("/public/gamelist/:letter", (req, res, next) => {
var sql = "SELECT title FROM Games WHERE title LIKE ? || '%' AND ownage = 'true'"
var params = [req.params.letter]
db.all(sql, params, (err, rows) => {
if (rows) {
return res.status(200).json(rows);
} else if (!rows) {
return res.json({ "answer": "NoGame" })
} else if (err) {
res.status(400).json({ "error": err.message });
return;
}
});
});
router.get("/public/game/:title", (req, res, next) => {
var sql = "select * from Games where title = ?"
var params = [req.params.title]
db.get(sql, params, (err, row) => {
if (row) {
res.status(200).json(row);
} else if (!row) {
console.log("Dont exist")
return res.json({ "answer": "NoGame" })
} else if (err) {
res.status(400).json({ "error": err.message });
return;
}
});
});
第二条路由/public/game/:title
按预期工作,而第一条路由/public/gamelist/:letter
没有捕捉到空结果。它总是返回200
,当不存在游戏时,它只返回一个空数组,而不是({ "answer": "NoGame" })
有人知道我的这部分代码出了什么问题吗?
2条答案
按热度按时间am46iovg1#
rjjhvcjd2#