javascript - 如何解决在 Node.js 中抛出错误的问题
问题描述
这是一段 Node.js 代码
app.get('/cat', function (req, res) {
console.log(req.query.id);
let catID = req.query.id;
res.render('category',{});
con.query(
'SELECT * FROM category WHERE id = '+catID,
function (error, result) {
if(error) throw err;
console.log(JSON.parse(JSON.stringify(result)));
});
});
不知道这是什么以及如何解决它
解决方案
您正在接收err
但试图抛出error
。使用下面的代码。
app.get('/cat', function (req, res) {
console.log(req.query.id);
let catID = req.query.id;
res.render('category',{});
con.query(
'SELECT * FROM category WHERE id = '+catID,
function (error, result) {
if(error) throw error;
console.log(JSON.parse(JSON.stringify(result)));
});
});
免责声明:使用参数化查询而不是将查询参数添加到数据库查询。当前代码将导致 SQL 注入威胁。
推荐阅读
- python - 如何让 python scapy 从命名的 fifo 中嗅探
- java - Interbase DB JDBC 连接
- angular - 我不断收到错误消息:错误:提供给 Query.startAt() 的参数过多。使用 AngularFire2 时
- spring-boot - 在spring security(Spring boot)中获取所有url中的禁止错误
- neo4j - 两组节点之间的最短路径
- java - 如何在我的 Spring 应用程序中获取 Firebase 的 Oauth 2.0 访问令牌
- rhel6 - 我可以在 RHEL6 下的 SystemTap 中获取当前工作目录吗
- python - 在指定距离/边界内获取点标签 - Python
- javascript - GraphQL 查询返回错误“不能为不可为空的字段返回 null”
- python - Pytorch 反向传播比 Tensorflow 慢?