Как получить изображение профиля Facebook с логотипом «F»? - PullRequest
1 голос
/ 16 декабря 2010

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

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

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

Ответы [ 4 ]

4 голосов
/ 05 апреля 2012

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

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

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

http://external.ak.fbcdn.net/safe_image.php?&url=[imageurl]&logo

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

0 голосов
/ 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
0 голосов
/ 19 мая 2012

С помощью 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/

0 голосов
/ 19 декабря 2010

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

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...