Как установить изображение профиля Facebook с помощью графика API - PullRequest
26 голосов
/ 29 ноября 2010

Есть ли способ изменить изображение профиля пользователя с помощью графика API?

Я знаю, что вы не можете с остальными API ( ссылка ), но я не мог найтив новом графике API.

Ответы [ 3 ]

42 голосов
/ 25 марта 2011

Загрузите изображение в существующий альбом (или создайте новый), используя Graph API. Будет выглядеть примерно так:

  $args = array('message' => 'Caption');
  $args['image'] = '@' . realpath("the_image.png");

  try {
    $data = $facebook->api('/'.$album_uid.'/photos', 'post', $args);
  }
  catch(Exception $e) {
    print "";
    print_r($e);
    print "
"; }

Затем получите загруженное изображение через Graph API и перенаправьте на ссылку изображения, добавьте &makeprofile=1 в строку запроса. Теперь пользователь будет перенаправлен на страницу обрезки изображения профиля:

try {
  $pictue = $facebook->api('/'.$data['id']);
  header("Location: ".$pictue['link']."&makeprofile=1");
}
catch(Exception $e) {
  print "";
  print_r($e);
  print "
"; }
7 голосов
/ 05 сентября 2012

PicBadges приложение выполняет эту работу четко.Просто взгляните на их приложение.Это довольно ясно, как они реализовали.

Они не загружают картинки напрямую в альбом "Картинки профиля".Вместо этого они загружают как обычно в свой автоматически сгенерированный альбом (в названии своего приложения), а затем выбирают изображение как «изображение профиля».Тем не менее, этот метод включает перенаправление пользователей на страницу, где им нужно обрезать , прежде чем закончить.

Интересная реализация, чтобы отметить!

5 голосов
/ 01 декабря 2010

Вы можете загрузить в альбом изображений профиля пользователя, используя Graph API, но похоже, что вы не можете обновить значение / me / picture, чтобы установить текущее изображение профиля пользователя на изображение, которое вы загрузили.

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