准备好的语句 nodejs postgresql returns 错误无参数
prepared Statements nodejs postgresql returns error no parameter
我被告知我的查询可能存在 SQL 注入的风险,因此我尝试更改它们。但是,现在每当我收到请求时,我都会收到一条错误消息,指出没有参数 $1。任何帮助将不胜感激。
app.get('/users', async(req, res) => {
try {
const {id} = req.params;
console.log(id)
const user = await Query(`SELECT * FROM client where id = `, id)
console.log("error ",user)
res.json(user[0])
} catch(err) {
console.log(err);
}
});
错误:没有参数$1
你的 console.log(id)
打印 undefined
吗?看起来您是从 URL 的路径参数中获取 id,但是您的路径似乎没有任何参数。尝试将 :id
添加到您的路径
即
app.get('/users/:id', async(req, res) => {
try {
const {id} = req.params;
console.log(id)
const user = await Query(`SELECT * FROM client where id = `, id)
console.log("error ",user)
res.json(user[0])
} catch(err) {
console.log(err);
}
});
然后像 GET /users/1
一样调用它,例如获取 ID 为 1 的用户。
我被告知我的查询可能存在 SQL 注入的风险,因此我尝试更改它们。但是,现在每当我收到请求时,我都会收到一条错误消息,指出没有参数 $1。任何帮助将不胜感激。
app.get('/users', async(req, res) => {
try {
const {id} = req.params;
console.log(id)
const user = await Query(`SELECT * FROM client where id = `, id)
console.log("error ",user)
res.json(user[0])
} catch(err) {
console.log(err);
}
});
错误:没有参数$1
你的 console.log(id)
打印 undefined
吗?看起来您是从 URL 的路径参数中获取 id,但是您的路径似乎没有任何参数。尝试将 :id
添加到您的路径
即
app.get('/users/:id', async(req, res) => {
try {
const {id} = req.params;
console.log(id)
const user = await Query(`SELECT * FROM client where id = `, id)
console.log("error ",user)
res.json(user[0])
} catch(err) {
console.log(err);
}
});
然后像 GET /users/1
一样调用它,例如获取 ID 为 1 的用户。