node.js - 我的邮递员正在发出发送请求,但对某些值什么也不做
问题描述
这是我在 Node JS 中的代码,我使用的是 mysql
router.post('/districts', (req, res) => {
const stateid = req.body.stateid;
db.query("select id, name from lkup_district where stateid = '"+stateid+"' ", (error, rows) => {
if(error) {
console.log(error);
}
if(rows.length>0) {
res.send(rows);
}
});
});
使用 stateid 我正在获取地区数据。但是,如果我发送一些 lkup_districts 中不存在的 stateid,邮递员会给我加载,但什么也没有发生。怎么了?
我应该写吗
if(rows.length=0) {
}
解决方案
看。仅当您找到某些东西时,您才应要求发送答案。如果发生错误或您的请求一无所获,您不会发回任何数据。所以,恕我直言,您需要稍微修改您的代码。就像是
router.post('/districts', (req, res) => {
const stateid = req.body.stateid;
db.query(
"select id, name from lkup_district where stateid = ? "
,[stateid], (error, rows) => {
if(error) {
console.log(error);
res.status(500).send("Error proceeding query");
}
if(rows.length>0) {
res.send(rows);
}
else {
res.status(404).send("No data found");
}
}
);
});
推荐阅读
- swift - 在 Swift 中计算方程
- python - 通过python将随机数据插入到具有MySQL数据库外键的表中
- python - Socks5 代理引发“连接意外关闭”和“[Errno 104] 对等连接重置”
- c# - C#如何使用反射获取另一个类中变量的值
- image - 图片中的笔画检测算法检测直线和曲线
- python - 在 Python 中使用 Stack 的回文
- r - 在 R 中使用文件名创建一个新列
- excel - 以连续的行将数据从组合框复制到表中
- javascript - 如何在画布上实现克隆元素
- r - 在组内为 pre-post 笼式数据 ggplot barplot 添加百分比标签