router.get('/deleteUsergoods', (req, res) => { const user = req.query.user; const sql = `delete from goods where user='${user}'` conn.query(sql, (err, result) => { if (err) { console.log("数据库操作失败", err); return; } if (result.affectedRows > 0) { console.log("用户删除成功"); res.send("用户删除成功") } else { console.log("删除用户失败"); } }) })这两个代码有什么错误
时间: 2024-03-13 22:45:24 浏览: 20
这两段代码可能存在如下问题:
1. handleDelete 函数中的 `myAxios` 请求中的 URL 参数似乎是 `/deleteUsergoods`,而后面的路由中的 URL 是 `/deleteUsergoods`,如果前后不一致的话会导致请求失败。
2. 路由中的 SQL 语句存在 SQL 注入漏洞,如果用户传入的 `user` 参数包含恶意 SQL 代码,就有可能导致数据库被攻击。
要避免 SQL 注入问题,可以使用参数化查询的方式来编写 SQL 语句,具体方法可以参考下面的代码:
```
router.get('/deleteUsergoods', (req, res) => {
const user = req.query.user;
const sql = 'delete from goods where user = ?';
conn.query(sql, [user], (err, result) => {
if (err) {
console.log('数据库操作失败', err);
return;
}
if (result.affectedRows > 0) {
console.log('用户删除成功');
res.send('用户删除成功');
} else {
console.log('删除用户失败');
}
});
});
```
这段代码中使用了参数化查询的方式来编写 SQL 语句,将用户传入的参数 `user` 作为参数数组的元素传递给 `conn.query` 函数。这样就可以避免 SQL 注入问题。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)