2011-03-21 144 views
0

希望你能帮我解决一些我遇到的问题。如何在尝试从Facebook上删除之前检查帖子是否存在

我正在写一个Facebook应用程序,我正在向用户墙发帖以使用PHP SDK更新游戏得分。

我想要做的是在发布新帖子之前删除旧帖子,这没有问题。问题开始的地方是用户事先已经手动删除旧帖子。在这种情况下,用户的FB会话将被删除,并且所有与API的交互变得不可能,直到用户再次通过FB.login。

我正在使用的代码是:

try { 
    $statusUpdate = $facebook->api('/'.$postID, 'delete'); 
} catch (FacebookApiException $e) { 
    d($e); 
} 

如果事前后存在工作正常。

我想知道的是,如果有可能这样做,以便如果删除调用失败,它不会删除会话,只是返回一个我可以处理的错误,或者检查是否在调用之前存在该帖子删除功能?

如果我可以避免,我宁可不问用户在publish_stream之上的read_stream权限。

回答

0

如何像:

SELECT post_id FROM stream WHERE post_id='USERID_POSTID' 

如果后期不存在,它会返回一个空的结果。

请注意,USERID_POSTID是你的$postID

+0

使用REST API呢? – Freyr 2011-03-21 22:42:54

+0

@Freyr:是的,我想这是目前与FQL合作的唯一方法。像[这](http://stackoverflow.com/questions/5288068/how-can-i-get-all-my-photos-from-facebook-with-php-sdk/5289302#5289302)电话会这样做。 – ifaour 2011-03-21 22:47:52

+0

没有read_stream扩展perm,我无法让它工作:/谢谢你尝试回答。我最终只是跳过整个功能来删除旧帖子,并最终使用FB.stream让用户管理他们自己的更新 - 无论如何,这是一个更好的选择:) – Freyr 2011-03-25 13:06:33

相关问题