размещение в потоке страниц - api возвращает id, но сообщение не отображается в потоке

Я запускаю небольшое PHP-приложение, где некоторые пользователи подключаются к Facebook и отправляют на свои фиды страниц, используя график api. Он работает нормально, никаких проблем, пока сегодня, когда пользователь сказал мне, что его публикация не появилась на его странице. Я проверил мою базу данных и лог-файлы, исключений из facebook api не было, он вернул идентификатор для нового сообщения. Я пробовал размещать то же самое сообщение с тем же файлом изображения, который был прикреплен к моей собственной странице, и все работало так, как ожидалось.

Вот PHP-код, выполняющий API-вызов:

$fb = new facebook(array('appId'=>FB_APP_ID, 'secret'=>FB_APP_SECRET, 'cookie'=>true));
try {
  if(!empty($post->file)) {
    $do = "photos";
    $request['fileUpload'] = true;
    $request['source']     = "@".realpath("data/srmfiles/{$userIdentity->id}/{$post->file}");
    $fb->setFileUploadSupport(true);
  }
  $postToId = ($do=="photos" && $post->facebook_page->facebookFotoAlbumId)
          ? $post->facebook_page->facebookFotoAlbumId 
          : $post->facebook_page->facebookId;
  $fb->setAccessToken($post->facebook_page->accessToken);
  $response             = $fb->api("/{$postToId}/{$do}","POST",$request);
  $post->wasSuccessfull = 1;
  $post->facebook_id    = $response['id'];
}
catch(FacebookApiException $e){
  $post->failCount++;
  if($post->failCount>=3) {
    $post->wasSuccessfull = -1;
  }
  $handle = fopen("srm-errors-".date("Ymd").".txt","a");
  fwrite($handle,date("H:i:s")." - ".$e->getMessage()."\n");
  fclose($handle);
}

Кто-нибудь имеет представление о том, что может быть проблемой, что API-интерфейс Facebook не запрещает исключение, возвращает идентификатор для нового сообщения, но сообщение не отображается на странице, а также не может быть просмотрено непосредственно через идентификатор?

1
nl ja de
Вы проверили, что это не проблема разрешения? иногда некоторые приложения меняют свои разрешения в то время, когда пользователи уже установили приложение, а новые разрешения никогда не принимаются пользователем
добавлено автор ClydeFrog, источник
Он должен, но я подозреваю, что это проблема разрешения. Некоторые разрешения/с или значение (токен доступа и т. Д.) Должны быть изменены/изменены для этого конкретного пользователя. Есть ли у вас более известные случаи такого рода?
добавлено автор ClydeFrog, источник
Вы говорите: «Я попробовал опубликовать то же самое сообщение с тем же файлом изображения, который был прикреплен к моей собственной странице, и все работало так, как ожидалось». Каков был URL-адрес этого образа-файла? во многих случаях, когда размещение URL-адресов с API-интерфейсом Facebook в PHP, сообщение не появляется из-за плохих символов, таких как «-» или «_» в URL-адресе. Как и предыдущий пост
добавлено автор ClydeFrog, источник
Разрешения для приложения не изменились, так как указанный пользователь зарегистрировался. Возможно, он впоследствии вручную удалил разрешение (я не думаю, что так, но спрошу), но в таком случае не должен ли API Facebook бросать исключение при попытке опубликовать?
добавлено автор SinnlosS, источник
Нет, это единственный, для всех остальных пользователей он все еще работает нормально. Я протестировал отправку сообщения с неправильным токеном доступа, в этом случае Facebook определенно выдает исключение. И я сам просто удалил пост-разрешение для приложения, а потом попытался отправить сообщение, а facebook api выбрал исключение, как ожидалось. : /
добавлено автор SinnlosS, источник
Хорошо, вы, кажется, правы! Я попробовал еще одну публикацию в альбоме с прикрепленным изображением, и в этом случае facebook api не генерирует исключение и возвращает идентификатор для нового сообщения, но фото не размещается на facebook. Так что, похоже, проблема связана с публикацией фотографий на альбоме, в этом случае исключений нет, если разрешение было снято.
добавлено автор SinnlosS, источник
Нет, URL и имя файла идентичны. Дело в том, что если приложение не имеет права публиковать свое имя, API действительно бросает исключение, когда я пытаюсь отправить его на идентификатор страницы. Но изображение является postet для id альбома, а не идентификатором страницы, и в этом случае api не генерирует исключение, но возвращает успех с идентификатором для сообщения, без публикации публикации.
добавлено автор SinnlosS, источник