У меня есть приложение Angular, и сейчас я работаю над его настройкой в веб-играх Facebook через iframe. Все игры Facebook, которые я проверил, уже знают информацию о вашем пользователе из Facebook, и нет такой кнопки, как «Войти» и т. Д. c. Я пробовал два варианта входа пользователя через Facebook. Поскольку само приложение уже имеет несколько параметров входа в систему, в частности через Facebook через Angular аутентификацию Firebase, я пытался запустить метод входа в Facebook в тех случаях, когда приложение открывается через iframe:
ngOnInit() {
if (window != window.top) {
this.facebookLogin()
}
}
Но в этом случае проблема в том, что диалоговое окно запуска входа в Facebook, и если пользователь открывает приложение напрямую, вставляя URL на вкладке браузера, браузер по умолчанию блокирует всплывающее окно. И я не смог найти, как запустить вход в Facebook без открытия этого диалогового окна. Даже не уверен, что это возможно.
Второй вариант, который я пробовал, - это обнаружение пользователя через Facebook SDK с помощью метода getLoginStatus. Насколько я понимаю, поскольку пользователь уже вошел в Facebook и открыл приложение со страницы игр Facebook, должен быть какой-то способ получить данные этого пользователя. Я попробовал следующий подход:
ngOnInit() {
FB.init({
appId: 'xxxx',
xfbml: true,
status: true,
cookie: true,
version: 'v5.0'
});
FB.getLoginStatus(function (response) {
console.log(response);
});
}
Но этот случай также не сработал. Так как я получаю «Неизвестно» в качестве ответа от этого метода. Можно ли настроить автологин для веб-приложения в играх Facebook? Я действительно не нашел ни одной игры, которая просила бы войти в систему пользователя, у них уже есть данные пользователей. И я не смог найти никакой подходящей информации по этому делу. Буду очень признателен за любую помощь. Спасибо