Как настроить автологин Facebook в веб-игре Facebook? - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть приложение 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? Я действительно не нашел ни одной игры, которая просила бы войти в систему пользователя, у них уже есть данные пользователей. И я не смог найти никакой подходящей информации по этому делу. Буду очень признателен за любую помощь. Спасибо

...