Я создаю веб-приложение, которое позволяет пользователям входить в Facebook с помощью OpenFB для Кордовы. Я хочу только некоторые функции доступны для просмотра, если они вошли в систему я пытаюсь запустить проверку на состояние входа и переориентировав, если не авторизованы Это то, что я до сих пор:..Перенаправление страницы, если пользователь не вошел в систему
<head>
<script>
if(openFB.getLoginStatus.loginStatus = 'unknown'){
window.location ="#/app/home";
}
</script>
</head>
Функция getLoginStats является как таковой:
function getLoginStatus(callback) {
var token = tokenStore.fbAccessToken,
loginStatus = {};
if (token) {
loginStatus.status = 'connected';
loginStatus.authResponse = {accessToken: token};
} else {
loginStatus.status = 'unknown';
}
if (callback) callback(loginStatus);
}
Когда я console.log значение, которое я получаю undefined. Даже при входе в систему с facebook. Мне что-то не хватает?
Выход код просил:
//logout function
$scope.fbLogout = function(){
openFB.logout(); //logouts after revoking permissions.
alert('Logged out');
}
Вы используете getLoginStatus как метод синхронизации. Возможно, попытайтесь вернуть {loginStatus: "someStatus"} из метода. –
В исходном методе FB.getLoginStatus используется кешированный результат, вам нужно передать дополнительный параметр, чтобы он обошел кеш (см. Docs.) Если это openFB thingie - это просто оболочка для официальных методов SDK (?), То это, вероятно, принимает такой параметр. – CBroe