Данные $ _SESSION уничтожаются после входа в Facebook - PullRequest
0 голосов
/ 03 апреля 2012

Я реализовал метод, позволяющий пользователям добавлять свои учетные записи Facebook в свою учетную запись сайта. Все работало нормально, пока я не переключился с рабочей области на рабочую область. (Они размещены на разных серверах)

Я перенаправляю пользователя на URL для входа в систему, как показано ниже:

$params = array("redirect_uri" => SITE_URL . "settings/accounts");
$login_url = $facebook->getLoginUrl($params);

В SITE_URL . "settings/accounts" я проверяю $ _GET ["state"] и заканчиваю интеграцию. Проблема с рабочим сервером состоит в том, что $ _SESSION теперь содержит только некоторые бредовые (по крайней мере, для меня) объекты Facebook. Данные пользователя в $ _SESSION пропали, поэтому я не могу связать facebook_id с его идентификатором пользователя.

Я что-то здесь упускаю?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 18 июня 2012

Я что-то здесь упускаю?

Скорее всего, вы упускаете тот факт, что ваш сеанс был не уничтожен , а новым один был создан… проверьте это, и, если это так, исправьте старую проблему сторонних файлов cookie .

0 голосов
/ 18 июня 2012

Facebook возвращает переменные $ _SESSION / $ _GET в виде подписанного блока, и вы должны использовать PHP SDK для их извлечения.Попробуйте что-то вроде этого:

$facebook -> getSignedRequest();
...