发布到页面流 - api返回id但post不会出现在流中

时间:2013-02-07 13:15:29

标签: facebook api post stream

我正在运行一个小型PHP应用程序,其中一些用户连接到Facebook并使用图形api发布到他们的页面供稿。 它运行良好,没有问题,直到今天用户告诉我他的帖子没有出现在他的页面上。我检查了我的数据库和日志文件,facebook api没有例外,它返回了新帖子的id。 我尝试使用附加到我自己页面的相同图像文件发布完全相同的帖子,所有内容都按预期工作。

以下是执行API-Call的PHP代码:

$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);
}

有没有人知道可能存在什么问题,Facebook API不会产生异常,返回新帖子的ID,但帖子没有出现在页面上也无法直接查看通过身份证?

0 个答案:

没有答案