Как разместить фотографии в альбоме страницы Facebook (фан-страницы) с помощью API?

Я создаю страницу в Facebook как администратор. И разработка некоторых приложений с использованием PHP и Facebook API. Что я хочу сделать, так это загрузить фотографии в указанный альбом на странице Facebook. В настоящий момент у меня появилось следующее сообщение об ошибке после публикации в album_id.

"error": {"type": "OAuthException", "message": "(# 120) Недопустимый идентификатор альбома"

Тогда я хотел бы знать следующие вещи. Как получить access_token для страницы Facebook не для меня. Достаточно ли разрешений (user_photos, publish_stream, manage_pages, photo_upload)? Наконец, если у вас есть некоторый опыт, покажите, пожалуйста, успешный образец кода?


person masa    schedule 04.09.2011    source источник
comment
попробуйте здесь .. facebook.stackoverflow.com   -  person amosrivera    schedule 04.09.2011
comment
Из вашего вопроса непонятно, откуда взялся идентификатор альбома? Вы точно загружаете на страницу?   -  person Igy    schedule 26.09.2011


Ответы (1)


Чтобы получить токен доступа к странице, попробуйте следующее:

$page_token_url = "https://graph.facebook.com/" . 
  $page_id . "?fields=access_token&" . $access_token;
$response = file_get_contents($page_token_url);
$resp_obj = json_decode($response,true);
$page_access_token = $resp_obj['access_token'];

Для разрешений достаточно publish_stream и manage_pages.

Для фактического размещения изображения я делаю следующее (что работает):

$ch = curl_init("https://graph.facebook.com/$album_id/photos/");  
curl_setopt($ch, CURLOPT_POSTFIELDS,
    array('access_token'=>$page_access_token,
    'source'=>"@$filename",
    'message'=>$caption,
    'description'=>$message));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$rtn = curl_exec($ch);
curl_close($ch);
echo $rtn;
person Jonathan    schedule 11.10.2012