Так я использую функцию как таковой, чтобы получить маркер доступа уже прошедшего проверку подлинности пользователя, который находится в настоящее время на моем сайте:Получение Facebook маркер доступа ВНЕ функции
var token;
FB.getLoginStatus(
function(response){
if (response.session) {
alert(response.session.access_token);
//This correctly shows the access token. <-----GOOD
token = response.session.access_token;
}
else{
//Other stuff.
}
}
);
alert(token);
//This shows undefined. <------PROBLEM
Единственный способ узнать токен доступа, похоже, находится в анонимной функции, вызываемой в вызове FB.getLoginStatus.
Я решил, что проблема в том, что анонимная функция внутри FB.getLoginStatus не выполняется до конца всех других скриптов на странице. Поэтому переменная «токен» не будет установлена до тех пор, пока все не будет выполнено, делая ее бесполезной.
Есть ли способ извлечь токен доступа в универсально доступную переменную? Я не хочу писать весь свой код, который требует знания токена доступа в одной анонимной функции.
Попробуйте 'window.token = response.session.access_token;' ... –
По-прежнему нет кубиков, так как настройка переменной в значительной степени является последним. – user828835