Как загрузить изображение в /{идентификатор группы}/фотографии с помощью API Facebook

#facebook #facebook-graph-api

Вопрос:

Я пытался опубликовать сообщение в группе facebook, используя приведенный ниже код, но в ответ получил «(#120) Неверный идентификатор альбома». Однако подпись будет опубликована в группе без фотографии.

 $data=array('url'=>$photo_src,  'caption' => $caption);
$response = $fb->post($group_id . '/photos', $data);
 

Я понятия не имею, откуда берется идентификатор альбома, так как это не поле в краю фотографий (/{идентификатор группы}/фотографии).

Я попытался жестко кодировать src-изображение в удаленное изображение (я дважды проверил, чтобы убедиться, что оно действительно существует), а также попытался использовать этот fileToUpload() метод, но ничего не сработало

дополнительная информация

Когда я использую

 $data=array('message'=>$message);
$response = $fb->post($group_id . '/feed', $data);
 

Он публикуется правильно. Это означает, что конфигурация Facebook суперкласса (AppID, секрет приложения) верна. Кроме того, функция доступа устанавливается с помощью setDefaultAccessToken() .

Обновите, чтобы очистить вопросы @luschn, я создал групповой альбом и попытался использовать /{идентификатор альбома}/край фотографий, но это не сработало. Ответ, который я получил, таков:

   "error": {
    "message": "(#100) The specified photoset id is invalid",
    "type": "OAuthException",
    "code": 100,
    "fbtrace_id": "AFest626CTTkyF1ABb_keIV"
  }
}
 

Как я могу решить проблему с загрузкой изображений?

Комментарии:

1. я считаю, что вам нужно использовать альбом по умолчанию, если только вы не хотите публиковать его в определенном альбоме.

2. Я забыл добавить, я создал альбом и попробовал /{идентификатор альбома}/край фотографий, но это не сработало. Ответ, который я получил, таков { "error": { "message": "(#100) The specified photoset id is invalid", "type": "OAuthException", "code": 100, "fbtrace_id": "AFest626CTTkyF1ABb_keIV" } }

3. Если я могу спросить, есть ли способ указать идентификатор альбома в /{идентификатор группы}/фотографии?. В документации «помощь» была признана устаревшей.

Ответ №1:

Я нашел грязный обходной путь.

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

Я разместил фотографию в качестве ссылки.

 $data=array('link'=>$photo_src,'message'=>$caption);
$response = $fb->post($group_id . '/feed', $data);
 

Facebook создаст предварительный просмотр изображения по ссылке