🔍
代码审查助手
AI 审查代码质量,发现潜在 Bug 和安全漏洞
5 积分/次
0/10000
使用示例
输入
function getUser(id) { var user = db.query("SELECT * FROM users WHERE id = " + id); if (user == null) { return null; } return user; }
代码审查助手 输出
代码审查报告
严重问题
-
SQL 注入漏洞 — 直接拼接用户输入到SQL语句,攻击者可以注入恶意SQL
// 修复:使用参数化查询 const user = db.query("SELECT * FROM users WHERE id = ?", [id]); -
使用 var 声明 — 应使用
const或let,避免变量提升问题
建议优化
- 添加类型注解 — 参数和返回值缺少类型定义
- 错误处理 — 数据库查询可能抛异常,建议用try-catch包裹
修复后代码
async function getUser(id: string): Promise<User | null> {
try {
const user = await db.query("SELECT * FROM users WHERE id = ?", [id]);
return user ?? null;
} catch (error) {
logger.error("Failed to get user", { id, error });
throw error;
}
}
常见问题
小桃子AI工具箱的代码审查助手支持所有主流编程语言,包括TypeScript、JavaScript、Python、Java、Go、Rust等,能识别代码规范、性能问题、安全漏洞和最佳实践。