Мне удалось выполнить рабочую регистрацию на Facebook с использованием php и моего локального хоста, затем попытаться сделать это на своем IIS, заставить php работать нормально, но я получаю следующую ошибку, когда нажимаю на кнопку входа: "Facebook SDK вернул ошибка: проверка подделки межсайтового запроса не удалась. Требуемый параметр "состояние" отсутствует в постоянных данных. "
это код для входа в систему, который я использовал:
login.php
<?php
if(!session_id()) {
session_start();
}
// Include the required dependencies.
require_once( 'vendor/autoload.php' );
$fb = new Facebook\Facebook([
'app_id' => 'app_id',
'app_secret' => 'app_secret',
'default_graph_version' => 'v2.2',
]);
$helper = $fb->getRedirectLoginHelper();
$loginUrl = $helper->getLoginUrl(
'https://'.$_SERVER['SERVER_NAME'].':444/fb/fb-callback.php',
array('scope' => 'pages_show_list, manage_pages, publish_pages,
user_photos'
));
echo '<a href="' . htmlspecialchars($loginUrl) . '">Log in with Facebook!
</a>';
echo '<br>'
?>
Я знаю, что эти вопросы появляются в Google и здесь, но ни одно из этих решений не сработало для меня, я использую localhost в качестве URL-адреса сайта для проверки в первую очередь, я не знаю, может ли это иметь какое-то отношение к моему выпуск.
Как и предлагали другие решения, у меня есть session_start (); в начале моего login.php и callback.php, но проблема все еще существует, я был бы признателен, если бы кто-то мог немного помочь здесь.
Спасибо!