Где найти файл cookie Facebook? - PullRequest
       10

Где найти файл cookie Facebook?

3 голосов
/ 21 января 2011

Я немного новичок в этом, так что терпите меня. Я установил кнопку «Войти через Facebook» через Javascript SDK, которая отлично работает. Я также настроил код PHP (facebook.php) Я могу успешно войти в Facebook через javascript, но затем не могу получить доступ к UID из сессии через php. Итак, как я могу получить php для доступа к сессионным наборам javascript? спасибо

Редактировать: (Размещать код ниже, чтобы его было легче читать)

Я могу консоль записать ответ и увидеть его.

FB.getLoginStatus(function(response) {
    console.log(response.session.uid);
});

Обновите страницу и попробуйте получить доступ к сеансу, который был установлен через php, он становится пустым.

require_once(RELATIVE_PATH.'applibs/facebook.php');
$config = array('appId'=>Config::$fb_app_id, 'secret'=>Config::$fb_secret, 'cookie'=>true);
$fb = new Facebook($config);
$fb->getUser(); // this will equal null because the $fb object isnt finding the cookie supposedly set by javascript

* Сделал некоторую отладку в facebook.php

в строке 358 ... $ cookieName = $ this-> getSessionCookieName ();
// возвращает fbs_myNumericAppId, похоже, что это сработало ..
if (isset ($ _ COOKIE [$ cookieName])) {
// СБОЙ! нет $ _COOKIE ['fbs_myNumericAppId']

Это кажется логичным, поскольку как войти в facebook.com может узнать, что такое мой идентификатор приложения?
Я также заметил, что после входа на facebook.com, в $ _COOKIE НИЧЕГО нет. Итак, чтобы войти в facebook через facebook.com, а затем на веб-сайте заметить, что для входа необходимо запустить FB.login при загрузке страницы. Затем вы должны установить cookie через информацию javacript, возвращаемую в $ _COOKIE, чтобы php мог забрать его где-либо еще.

1 Ответ

4 голосов
/ 21 января 2011

У меня есть сообщение в блоге и некоторые предыдущие ответы , которые могут быть вам полезны в качестве ориентиров.

ЕстьВы зарегистрировали свой сайт в Facebook как «приложение»?Если нет, вам нужно сделать это.Файл cookie, который устанавливает Facebook и позволяет вашему сайту получать доступ к информации пользователя (после того, как они согласились предоставить доступ к вашему «приложению»), использует комбинацию идентификатора вашего приложения и «секретного» (длинной буквенно-цифровой строки, которой вы не должны делиться,или другие приложения смогут выдать себя за вас), чтобы установить зашифрованное значение с идентификатором пользователя и токеном аутентификации, уникальным для пользователя и вашего приложения (представляющих разрешение, которое они дали вам на свои данные).

Файл cookie размещается на вашем сайте вместе с запросами, как и любой другой файл cookie.Вы будете использовать секрет своего приложения для его расшифровки и извлечения идентификатора пользователя и токена аутентификации, которые затем будете использовать для доступа к данным через API-интерфейс Graph Facebook.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...