Как правильно проанализировать код при аутентификации вашего приложения во время входа в систему?Я использую PHP для своего приложения.
Причина, по которой я спрашиваю, заключается в том, что я продолжаю получать странные запросы в MySQL всякий раз, когда я пытаюсь выполнить вставку в свою базу данных.Все вызовы API работают, но если я попытаюсь ввести данные пользователя (имя, адрес электронной почты, access_token), то после этого также будут выполнены три или четыре других запроса с пустыми значениями, каждый в разных строках.Это происходит только тогда, когда я пытаюсь получить код аутентификации через $ _REQUEST ['code'] или $ _SERVER ['QUERY_STRING'] после URL диалога.
Что странно, так это то, что у меня вообще не возникает проблем с MySQL, если я просто пытаюсь вызвать ту же страницу с $ code, жестко запрограммированным в нужное значение.Очевидно, я не могу оставить это так, поскольку код аутентификации всегда меняется, но это странно, потому что только тогда мой MySQL работает нормально.Кто-нибудь еще испытывал это?Возможно, кодовый ответ закодирован в другом формате?
Любая помощь будет принята с благодарностью, вот мой код:
$code = $_REQUEST['code'];
if (empty($code)) {
$dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" . $app_id .
"&redirect_uri=" . urlencode($redirect) . "&scope=offline_access,email";
echo("<script> top.location.href='" . $dialog_url . "'</script>");
}
$response = urldecode($_SERVER['QUERY_STRING']);
$code = substr($response,5);
$token_url = "https://graph.facebook.com/oauth/access_token?client_id="
. $app_id . "&redirect_uri=" . urlencode($redirect) . "&client_secret=" .
$app_secret . "&code=" . $code;
$access_token = file_get_contents($token_url);
$user_url = "https://graph.facebook.com/me?" . $access_token;
$user = json_decode(file_get_contents($user_url));
$user_id = $user->id;
$email = $user->email;
// MYSQL insert queries into database