Я создаю страницу в Facebook как администратор. И разработка некоторых приложений с использованием PHP и Facebook API. Что я хочу сделать, так это загрузить фотографии в указанный альбом на странице Facebook. В настоящий момент у меня появилось следующее сообщение об ошибке после публикации в album_id.
"error": {"type": "OAuthException", "message": "(# 120) Недопустимый идентификатор альбома"
Тогда я хотел бы знать следующие вещи. Как получить access_token для страницы Facebook не для меня. Достаточно ли разрешений (user_photos, publish_stream, manage_pages, photo_upload)? Наконец, если у вас есть некоторый опыт, покажите, пожалуйста, успешный образец кода?
Ответ 1 · рейтинг 1 · Jonathan
Чтобы получить токен доступа к странице, попробуйте следующее:
$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;