Все возвращаемые значения не определены из кнопки входа в Facebook - PullRequest
0 голосов
/ 15 марта 2019

После успешного входа в систему я пытаюсь получить несколько полей от пользователя.Все они undefined, кроме name и ID.Во всплывающем окне действительно спрашивают те разрешения, которые я дал.

Прочитайте все посты здесь и не предлагайте решение, которое работает, кроме использования tokens (?), Которое я не уверен как, и никогда не вижу в примерах FB.

FB.login(
  function(response) {
    if (response.status === "connected") {
      console.log("connected");
      console.log("Access Token: " + response.authResponse.accessToken);

      testAPI();
    } else {
      console.log("not connected");
    }
  },
  { scope: "email,user_age_range,user_friends" }
);

function testAPI() {
  console.log("Welcome!  Fetching your information.... ");
  FB.api("/me", function(response) {
    console.log("name: " + response.name);
    console.log("email: " + response.email);
    console.log("id: " + response.id);
    console.log("friends: " + response.user_friends);
    console.log("age: " + response.user_age_range);
    console.log("end");
  });
}

Если я печатаю response, я получаю ошибку: Uncaught ReferenceError: ответ не определен

1 Ответ

0 голосов
/ 16 марта 2019

Для тех, кто интересуется, во-первых, способ прочитать это:

  FB.api('/me', {fields: 'name,email'}, (response) => {
          console.log('name: ' + response.name);
          console.log('email: ' + response.email);
     });

Второй , несколько замечаний:

  1. Удалите ваше приложение из своих профилей в Facebook (в разделе «Приложения»), в противном случае при каждом тестировании FB автоматически предоставит доступ, даже если вы захотите добавить больше разрешений.

  2. Удаляйте кеш из вашего браузера при каждом новом тесте, поскольку FB сохранит предыдущее состояние и изменения не вступят в силу. (Иногда даже обновленные развертывания не будут)

  3. Вы должны развернуть свой сайт со мной - локальный хост не работает с FB, потому что им требуется https.

Тестирование Facebook немного хлопотно.

...