Получить изображение профиля пользователя по Id
сейчас я работаю над веб-приложением, которое в основном основано на Facebook graph api.
Я храню некоторые данные о пользователях-на самом деле, возможные общедоступные данные, такие как имя и идентификатор.
Я также знаю, что изображение профиля является частью общедоступных данных, и мне интересно, как я смогу получить прямую ссылку на изображение профиля пользователя только с помощью его идентификатора?
спасибо заранее
10 ответов:
http://graph.facebook.com/ "+ facebookId + " / picture?тип=квадрат Например: http://graph.facebook.com/67563683055/picture?type=square
есть также больше размеров, кроме "квадрат". Смотрите документы.
вы можете использовать следующие URL-адреса для получения различных размеров изображений профиля. Пожалуйста, не забудьте добавить Facebook id в 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
чтобы получить наибольший размер изображения
https://graph.facebook.com/{userID}?fields=picture.width(720).height(720)или что-нибудь еще вам нужно, как размер. Основываясь на опыте, type=large-это не самый большой результат, который вы можете получить.
tihs будет полезна ссылка
http://graph.facebook.com/893914824028397/picture?type=large&redirect=true&width=500&height=500
вы можете установить высоту и ширину, как вы нужны
893914824028397 и facebookid
это буквально на главной странице Graph API documentation.
/OBJECT_ID/pictureвозвращает ссылку на изображение объекта (в данном случае пользователей)/OBJECT_ID/?fields=pictureвозвращает URL-адрес изображенияпримеры:
<img src="https://graph.facebook.com/4/picture"/>использует HTTP 301 перенаправление на фотографию профиля Zuck
https://graph.facebook.com/4?fields=pictureвозвращает сам URL
здесь этот api позволяет вам легко получить фотографии профиля fb, google, twitterhttps://www.avatars.io/
использовать URL-адрес следующим образом:https://график.facebook.ком/функция user_id/Картинка?тип=квадрат в src тэга img. тип может быть маленький,большой.
вы можете использовать AngularJs для этого, его двухсторонняя функция привязки данных получит решение с минимальными усилиями и меньшим количеством кода.
<div> <input type="text" name="" ng-model="fbid"><br/> <img src="https://graph.facebook.com/{{fbid}}/picture?type=normal"> </div>Я надеюсь, что это ответ на ваш запрос.Примечание: Вы также можете использовать другую библиотеку.
вы можете получить его с помощью этого url : вы получите изображение HD (максимальный размер)
https://graph.facebook.com/{userID}?fields=picture.width(720).height(720)&redirect=falseНе забудьте redirect=false или он вернет ошибку
до SDK для JavaScript-кода (версия 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 возвращенный. Другие возможные значения типа включают:маленький,нормальный,альбом и площадью.
Comments