Facebook логин FB.ui, токен доступа пуст
Я пытаюсь аутентифицировать пользователей в своем приложении на Facebook. Я использую следующий код:
window.fbAsyncInit = function () {
FB.Event.subscribe('auth.statusChange', fbIsReady);
FB.init({ appId: app_id, channelUrl: channelUrl, status: true, cookie: true, xfbml: true, oauth: true});
FB.Canvas.setAutoGrow();
FB.Canvas.scrollTo(0, 0);
};
(function (d) {
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) { return; }
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_GB/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
} (document));
function fbIsReady(res){
fbReady = 1;
var params = {method: "oauth", "scope": 'publish_stream'};
FB.ui(params, isLoggedIn);
}
function isLoggedIn(res){
if(!res || res.status === 'not_authorized' || res.perms != 'publish_stream')
fbIsReady();
else if(res.hasOwnProperty('selected_profiles')){
FB.api('/me', {access_token: FB.getAccessToken()}, checkUserInfo);
}
}
function checkUserInfo(){
console.log(res); // return the error bellow right after the user gives permissions and the expected result after refresh
}
Моя проблема в том, что после аутентификации пользователя в приложении токен доступа не устанавливается. Мне нужно обновить страницу, чтобы она работала. Я думаю, что после авторизации пользователя я смогу выполнить FB.api('/me'...), но я получаю:
код: 2500 сообщение: "Активный токен доступа должен использоваться для запроса информации о текущем пользователе". тип: "OAuthException"
Пока я не обновлю страницу. Любая идея??
Спасибо