Получить изображение профиля пользователя по идентификатору

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

Заранее спасибо

Ответ 2

Вы можете использовать следующие URL-адреса для получения изображений изображений разных размеров. Обязательно добавьте идентификатор Facebook в URL.

Фото большого размера https://graph.facebook.com/ {facebookId}/picture? type = large

Изображение среднего размера https://graph.facebook.com/ {facebookId}/picture? type = normal

Маленькая фотография https://graph.facebook.com/ {facebookId}/picture? type = small

Квадратная фотография https://graph.facebook.com/ {facebookId}/picture? type = square

Ответ 3

Чтобы получить максимальный размер изображения

https://graph.facebook.com/{userID}?fields=picture.width(720).height(720) 

или что-нибудь еще, что вам нужно в качестве размера. Основываясь на опыте, type = large - не самый большой результат, который вы можете получить.

Ответ 5

Это буквально на первой странице документации Graph API.

  • /OBJECT_ID/picture возвращает редирект на картинку объекта (в данном случае это пользователи)
  • /OBJECT_ID/?fields=picture возвращает URL картинки

Примеры:

<img src="https://graph.facebook.com/4/picture"/> использует перенаправление HTTP 301 на фотографию профиля Цука

https://graph.facebook.com/4?fields=picture возвращает сам URL

Ответ 6

Здесь этот API позволяет легко получить фото профиля fb, google и twitter

https://www.avatars.io/

Это API, который возвращает изображение профиля, когда ему дается имя пользователя для различных социальных сетей, включая Twitter, Facebook, Instagram и Gravatar. Он имеет библиотеки для iOS, Android, Ruby, Node, PHP, Python и JavaScript.

Ответ 7

Использовать url как: https://graph.facebook.com/ user_id/picture? type = square в src тега img. тип может быть мал, большой.

Ответ 8

Вы можете использовать AngularJs для этого, его двухсторонняя привязка данных будет получать решение с минимальными усилиями и меньшим количеством кода.

<div> <input type="text" name="" ng-model="fbid"><br/> <img src="https://graph.facebook.com/{{fbid}}/picture?type=normal"> </div>

Я надеюсь, что это ответит на ваш запрос. Примечание. Вы можете использовать и другую библиотеку.

Ответ 9

Вы можете получить его с помощью этого URL: вы получите изображение HD (максимальный размер)

https://graph.facebook.com/{userID}?fields=picture.width(720).height(720)&redirect=false

не забудьте redirect = false, иначе он вернет ошибку

Ответ 10

С помощью Javascript SDK (v2.12 - апрель 2017 г.) вы можете получить подробную информацию о запросе изображения следующим образом:

FB.api("/" + uid + "/picture?redirect=0", function (response) {
  console.log(response);

  // prints the following:
  //data: {
  //  height: 50
  //  is_silhouette: false
  //  url: "https://lookaside.facebook.com/platform/profilepic/?asid=…&height=50&width=50&ext=…&hash…"
  //  width: 50
  //}

  if (response && !response.error) {
    // change the src attribute of img elements
    [...document.getElementsByClassName('fb-user-img')].forEach(
      i => i.src = response.data.url
    );

    // OR redirect to the URL above
    location.assign(response.data.url);
  }
});

Для получения ответа JSON важен параметр redirect с 0 (ноль) в качестве значения, поскольку по умолчанию запрос перенаправляет изображение. Вы можете добавить другие параметры в тот же URL. Примеры:

  • "/" + uid + "/picture?redirect=0&width=100&height=100": будет возвращено изображение размером 100x100;
  • "/" + uid + "/picture?redirect=0&type=large": возвращается изображение размером 200x200. Другие возможные значения типа включают: маленький, нормальный, альбом и квадрат.

Ответ 11

Просто следуйте как ниже URL

https://graph.facebook.com/facebook_user_id/picture?type=square

Тип может быть нормальный, маленький, средний, большой. Или квадрат (если вы хотите получить квадратное изображение, размер квадрата ограничен 50x50).

Ответ 12

В соответствии с текущей последней версией API Facebook Facebook 3.2, для пользователей вы можете использовать этот общий метод для получения изображения профиля: https://graph.facebook.com/v3.2/ enjuser-id‹ /picture? type= square, который вы можете посетите документацию по картинке пользователя здесь. Возможные значения параметра type в URL могут быть маленькими, нормальными, альбомными, большими, квадратными

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

Вы можете получить изображение профиля группы или страницы, используя общий URL-адрес: https://graph.facebook.com/v3.2/ enjuser-id‹/picture? access_token= enjaccess-tokencasts&type= square

Я надеюсь, что это полезно для людей, которые ищут изображение страницы или профиля группы.