私は非常に単純な問題を抱えていると思います。私は現在 API に取り組んでおり、それを使用する前にログインする必要があります。ログインは http リクエスト経由で行われるため、ログインするには次のようにアクセスします。
http://myapi.com/login.php?email=mail@mail.com&password
例えば。
電子メールとパスワードが正しい場合、いくつかのセッション変数を設定してセッションを開始します。
session_start();
$_SESSION['idUser'] = $row['id'];
$_SESSION['email'] = $row['email'];
print(json_encode(array("authenticated" => true)));
ただし、API にアクセスし、ターミナルから cURL で (ログインではなく) リクエストを行うと、最初にログイン リクエストを実行したときに、認証されていないと表示されます。別のページで API を呼び出すたびに、セッション変数をチェックします。それらが設定されている場合、ユーザーはログインしています。
function checkSession()
{
session_start();
if(!isset($_SESSION['idUser']) || !isset($_SESSION['email']))
{
print json_encode(array("error" => "Not authorized"));
exit();
}
}
権限がないと表示されるのはなぜですか? Web ブラウザーからページにアクセスすると、すべて正常に動作します。
ありがとう!