В любом случае, чтобы получить полноразмерное изображение профиля с помощью любой facebook api?
http://graph.facebook.com/ {ID}/picture? type = large - путь к малым.
Спасибо:)
В любом случае, чтобы получить полноразмерное изображение профиля с помощью любой facebook api?
http://graph.facebook.com/ {ID}/picture? type = large - путь к малым.
Спасибо:)
Я думаю, что я использую самый простой метод, чтобы получить полный профиль. Вы можете получить полное изображение профиля, или вы можете сами установить размер изображения профиля:
$facebook->api(me?fields=picture.width(800).height(800))
Вы можете установить width
и height
в соответствии с вашими потребностями. Хотя Facebook не возвращает требуемый размер, он возвращает самое близкое размерное изображение, доступное с ними.
Задайте ширину или высоту для некоторого сколь угодно большого числа:
https://graph.facebook.com/username_or_id/picture?width=9999
Если ширина и высота одинакового номера, фотография обрезается до квадрата.
нашел способ:
$albums = $facebook->api('/' . $user_id . '/albums');
foreach($albums['data'] as $album){
if ($album['name'] == "Profile Pictures"){
$photos = $facebook->api('/' . $album['id'] . '/photos');
$profile_pic = $photos['data'][0]['source'];
break;
}
}
Как отмечалось выше, похоже, что обложка альбома профиля представляет собой изображение профиля привет-res. Я бы посмотрел на тип альбома "profile", а не на имя, но, поскольку имя может быть несовместимым на разных языках, но тип должен быть.
Чтобы уменьшить количество запросов/синтаксического анализа, вы можете использовать этот fql: "выберите cover_object_id из альбома, где type = 'profile' и owner = user_id"
И затем вы можете создать URL-адрес изображения с помощью: "https://graph.facebook.com/" + cover_object_id + "/picture & type = normal & access_token =" + access_token
Похоже, для этого изображения нет "большого" типа, но "нормальный" все еще довольно большой.
Как отмечалось выше, эта фотография может быть менее доступной, чем изображение общедоступного профиля. Для доступа к нему вам необходимы права пользователя_photos или friend_photos.
С Javascript вы можете получить изображения профиля полного размера, подобные этому
передайте accessToken
в функцию getface()
из вашего вызова FB.init
function getface(accessToken){
FB.api('/me/friends', function (response) {
for (id in response.data) {
var homie=response.data[id].id
FB.api(homie+'/albums?access_token='+accessToken, function (aresponse) {
for (album in aresponse.data) {
if (aresponse.data[album].name == "Profile Pictures") {
FB.api(aresponse.data[album].id + "/photos", function(aresponse) {
console.log(aresponse.data[0].images[0].source);
});
}
}
});
}
});
}
Вы можете использовать инструменты разработчика, такие как firebug в firefox. Щелкните правой кнопкой мыши изображение и проверьте элемент с помощью firebug.
Вы получите URL-адрес, с которого facebook извлекает изображение. Там вы найдете какой-то URL-адрес.
Я предположительно положил "х" в ссылку по соображениям конфиденциальности.
Чтобы увидеть изображение в полном разрешении, откройте новую вкладку и откройте этот URL:
http://sphotos-e.ak.fbcdn.net/hphotos-ak-snc6/ "297962_1190xxxxx203889_104xxxxx723_n.jpg"
Как вы можете видеть, я поставил точное имя изображения после "/"
Удалите кавычки и откройте ссылку. Вы получите изображение полного размера.
Фотографии профиля уменьшаются до 125x125 на фреймворке, когда они загружаются, насколько я знаю, вы не можете получить больше снимков. Насколько велика картина, которую вы получаете?