Как получить изображение профиля facebook с логотипом «F»?

Я использую Graph API, и мне нужно получить изображения профилей пользователей по их UID. Это легко сделать: http://graph.facebook.com/[Facebook UID]/picture

Я помню, какое-то время назад на этих аватарках был маленький логотип Facebook (буква 'f'-char). Но теперь я получаю только фотографии профиля без этого логотипа.

Как я могу получить изображения с этим логотипом «f»?


person x17az    schedule 16.12.2010    source источник


Ответы (4)


Facebook не хранит изображения с включенной буквой «f», поэтому получить к ним доступ довольно сложно.

Я обнаружил, что это работает:

Вам понадобится окончательный URL-адрес изображения после перенаправления graph.facebook.com/[id]/picture.

http://external.ak.fbcdn.net/safe_image.php?&url=%5Bimageurl%5D&logo

например. меня

person Tom Waddington    schedule 05.04.2012

Я думаю, что это невозможно с помощью графического API.

Это было возможно с помощью FQL (не знаю, работает ли он еще):

SELECT pic_with_logo FROM user WHERE uid = "..."

или используйте xfbml с <fb:profile-pic facebook-logo="true">

person martinyyyy    schedule 19.12.2010
comment
фейсбук называет это фото профиля фавиконкой... попробуй гуглить. Может быть, вы найдете что-то лучше, чем я. - person martinyyyy; 19.12.2010

С помощью jQuery и JS API вы можете сделать вызов FQL:

FB.api({ method: 'fql.query', query: 'SELECT uid, pic_with_logo FROM user WHERE uid = me()' }, function(response) {
    var user    = response[0];
    $('#container').append('<img src="'+user.pic_with_logo+'"/><br>');
});

также вы можете попробовать:
pic_small_with_logo, pic_big_with_logo, pic_square_with_logo и pic_with_logo, которые я использую в примере.

вот таблица пользователей:
https://developers.facebook.com/docs/reference/fql/user/

person Philip    schedule 19.05.2012

Основываясь на ответе Тома, вот пример php, чтобы получить пользовательский

$_json = json_decode(file_get_contents('http://graph.facebook.com/[FACEBOOK_UID]?fields=picture'));
if (isset($_json->picture)) {
  header("Location: http://external.ak.fbcdn.net/safe_image.php?&url=" . $_json->picture . "&logo");
  exit;
}

Вот что мы делаем:

  • Запрос URL-адреса изображения через opengraph
  • Получить URL-адрес изображения из объекта json
  • перенаправить страницу в обработчик изображений facebook с добавлением &логотипа к URL
person Mehmet Fatih Yıldız    schedule 05.07.2012