Изменения в ссылке на профиль в Facebook? - PullRequest
0 голосов
/ 24 мая 2019

Актуальна ли ссылка на фотографию профиля в Facebook или я должен хранить изображения в хранилище?

Я использую аутентификацию firebase и facebook и получаю ссылку на изображение профиля пользователя, как это, когда они ПЕРВЫЙ создают учетную запись:

const photoLarge = await getFacebookUserInfo().then((userResponse) => {
                return userResponse.picture.data.url.toString()
              }).catch((error) => {
                return error
              });   
            const userId = await firebaseService.auth().currentUser.uid;
            writeUserData(
              userId,
              photoLarge,
            );
          }

По какой-то причине я заметил, что в dev vs prod у меня 2 разные ссылки с неработающим dev.

Dev не работает:

https://platform-lookaside.fbsbx.com/platform/profilepic/?asid=10161383578450224&height=200&width=200&ext=1558132998&hash=AeTUIkafEn5zw5PF

Prod:

https://platform-lookaside.fbsbx.com/platform/profilepic/?asid=10161383578450224&height=200&width=200&ext=1558673410&hash=AeQGA8guHyxIK9du

Я пытаюсь выяснить, нужно ли загружать и сохранять изображение в facebook и затем ссылаться на него, и если да, то как это сделать? (/ есть ли срок действия ссылки)

Я не видел, происходит ли это для входа в Google.

Вот мой запрос графика:

//graph QL request to get larger facebook profile
export const getFacebookUserInfo = () => {
  return new Promise((resolve, reject) => {
    const infoRequest = new GraphRequest(
      '/me',
      {
        parameters: {
          fields: {
            string: 'email,about,name,picture.type(large)'
          }
        }
      },
      (error, data) => {
        if (error) {
          reject(error);
        } else {
          resolve(data);
        }
      }
    );
    new GraphRequestManager().addRequest(infoRequest).start();
  })
}

1 Ответ

0 голосов
/ 11 июля 2019

Так что как-то я наконец понял это сегодня.По сути, graphAPI выплевывает несколько фрагментов, один из которых представляет собой фрагмент изображения.Это похоже на ссылки, которые я разместил выше https://platform-lookaside.fbsbx.com/platform/profilepic

ЭТО ИЗМЕНЕНИЯ !!!Не уверен, как часто, но НЕ используйте это, так как в конечном итоге это будет неработающая ссылка.

Однако я пропустил то, что вы можете использовать идентификатор, который выкладывает graphAPI, вместо этого и использовать следующую ссылку:

http://graph.facebook.com/{your_id_goes_here}/picture?type=large&redirect=true&width=500&height=500

Более подробную информацию можно найти в этом другом сообщении:

Получить фотографию профиля пользователя по Id

...