Метод FB.getLoginStatus больше нельзя вызывать со страниц http - PullRequest
0 голосов
/ 10 октября 2019

Поэтому я попытался реализовать функцию входа в Facebook на своем внутреннем сервере nodejs. В целях тестирования я пытаюсь на стороне клиента проверить логин и получить токен доступа. Для этого я следовал за документами и там говорилось использовать Javascript SDK, и я следовал процедуре, но есть проблема.

window.fbAsyncInit = function() {
    FB.init({
      appId            : '##############',
      autoLogAppEvents : true,
      xfbml            : true,
      version          : 'v4.0'
    })


    FB.getLoginStatus(function(response) {
        statusChangeCallback(response);
    });

  }

Это код, в котором я хочу получить статус входа пользователя, но я получаю сообщение об ошибке:

The method FB.getLoginStatus can no longer be called from http pages

Я очень хорошо осведомлен о правилах производства, ноэто режим разработки, над которым я работаю и все еще получаю сообщение об ошибке. Что-то мне не хватает? Что-нибудь, что я должен сделать? Я запускаю его на локальном хосте и получаю сообщение об ошибке.

Ответы [ 2 ]

0 голосов
/ 10 октября 2019
  • Если ваш сервер работает на локальном хосте (он же на вашей машине): используйте devcert для https на локальном хосте
  • Если нет, используйте бесплатный сертификат Let's Encrypt с certbot: https://letsencrypt.org/docs/client-options/
0 голосов
/ 10 октября 2019

Вам нужен SSL-сертификат, развернутый на вашем сервере (то есть localhost). Он будет отклонять что-либо из небезопасного местоположения.

...