【发布时间】:2025-12-16 12:45:01
【问题描述】:
所以我有一个 RESTful API,但我想保证安全,这样不是每个人都可以做任何事情。
$app->get('/users' , function(Request $request, Response $response){
$sql = "SELECT * FROM users";
try{
// Get db object
$db = new db();
// Connect
$db = $db->connect();
$stmt = $db->query($sql);
$users = $stmt->fetchAll(PDO::FETCH_OBJ);
$db = null;
echo json_encode($users);
} catch(PDOException $e){
echo '{"error": {"text": '.$e->getMessage().'}}';
}
});
所以当我转到http://localhost/API/users 时,我会将所有用户放入一个 json 表中。
在我的数据库中,我的数据存储为[{"id":"1","username":"werknemer","password":"...","level":"1","name":"piet","surname":"jan","email":"pietjan@gmail.nl"}]
如果你是level 5,我希望每个人都能通过我的 API 看到自己的表格。
有解决办法吗?
【问题讨论】:
-
此代码不安全。您应该使用准备好的语句
-
我对@987654325@ 使用准备好的语句。如何确保您需要特殊级别来添加用户或删除用户?
-
旁注:如果您生成带有纯字符串连接的 JSON,它将随机中断。你已经知道
json_encode(),到处使用它。
标签: php api authentication slim