2011-07-24 2 views
0

Я пытаюсь настроить автономный доступ для своего приложения Facebook. Часть javascript находится на месте, полностью аутентифицировав пользователя. Однако я не могу, чтобы жизнь меня, похоже, отправляла данные аутентификации с javascript на PHP.Передача аутентификации Facebook с Javascript на PHP

В основном я получаю access_token от яваскрипта getSession метода, то я могу сделать мой запрос PHP с access_token=<URL_ENCODED_ACCESS_TOKEN>, однако PHP SDK обнаруживает, что маркер доступа совпадает с доступом к приложению токена и цыпленок из.

Я понятия не имею, почему мой токен доступа относится к приложению, может быть, потому, что я разработчик?

Для чего это стоит, это линия, где SDK поручительств Facebook на меня:

$access_token = $this->getAccessToken(); 
if ($access_token && 
    $access_token != $this->getApplicationAccessToken() && 
    !($user && $persisted_access_token == $access_token)) { 
    $user = $this->getUserFromAccessToken(); 
    if ($user) { 
    $this->setPersistentData('user_id', $user); 
    } else { 
    $this->clearAllPersistentData(); 
    } 
} 

Не могу выделить строку, то эта строка:

$access_token != $this->getApplicationAccessToken() && 

Может кто-нибудь объясните мне, как передать аутентифицированного пользователя с Javascript на PHP?

Кроме того, я предполагаю, что, поскольку пользователь дал разрешение на автономный доступ, я могу хранить этот токен доступа для последующего использования?

Спасибо

+0

Я использую AJAX, хотя я не вижу, как это имеет значение. В любом случае PHP получает вход от HTTP-запроса с помощью токена доступа в параметрах GET. – Naatan

ответ

0

Решено в конечном итоге, передав токен доступа в качестве параметра GET, затем используя вызовы API, которые принимают вручную поставку токена доступа. Я не мог понять, как это будет автоматически.

0

Ну попробуйте использовать куки, и как Javascript и PHP позволяет это сделать, если нет, то AJAX это лучший способ сделать это и getAccessToken() функция в основном получает маркер доступа пользователя только если пользователь подключен, и если пользователь не подключен, он получает токен доступа к вашему приложению, echo getUser() и видит, что вы получаете, если вы получаете идентификатор пользователя, тогда пользователь подключается к вашему приложению, и если вы получаете 0 , то пользователь не подключен.

Смежные вопросы