Эта функция работала для меня до дня, когда facebook решил принудительно внести некоторые изменения.
function get_facebook_cookie() { $app_id = '[MyAppID]'; $application_secret = '[MyAppSecrect]'; if(isset($_COOKIE['fbs_' . $app_id])){ $args = array(); parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args); ksort($args); $payload = ''; foreach ($args as $key => $value) { if ($key != 'sig') { $payload .= $key . '=' . $value; } } if (md5($payload . $application_secret) != $args['sig']) { return null; } return $args; } else { return null; } }
Я был способен получить доступ к токену пользователей FB так же легко, как и
$cookie['access_token']
Теперь мне кажется, что я не могу получить эту информацию больше.
Я был успешно (легко) в состоянии внести необходимые изменения в свой код javascript, но я немного зациклен на стороне php. В качестве быстрой заметки я использую codeigniter, и у меня было много проблем, пытаясь заставить FB PHP SDK играть хорошо, также я не видел примеров интеграции PHP 3 SDK в codeigniter, поэтому я ищет быстрое и грязное решение, которое позволит мне получить токен доступа из файла cookie, что позволит мне использовать следующий вызов API Facebook:
'https://api.facebook.com/method/friends.getAppUsers?access_token=' . $cookie['access_token'];
Любая помощь приветствуется.
это потому, что facebook изменяет имя файла cookie с fbs_
на fbsr_
.
Но было больше изменений. Просто выполните следующие действия.