我正在做一个Facebook应用程序,直到昨天它都运行良好。我所做的是让用户选择他们的 20 个朋友,并编写一个简单的脚本从这样的循环发布到他们的墙上:
foreach($selectedids as $selectedid) {
$invitation = new Invitations();
$invitation->circle_id = $circle->id;
$invitation->status = 0;
$invitation->follower_id = $selectedid;
if ($invitation->create()) {
$id = $invitation->id;
// Now Send the Invitations on Facebook
$facebook->api($selectedid.'/feed', 'post', array(
'picture' => '',
'message' => $name."something",
'name' => $config['app_title'],
'link' => $config['redirect_uri']."?invitation=".$id,
'caption' => '',
'description' => '',
'actions' => array(array('name' => 'Get Search',
'link' => 'http://www.google.com'))
));
}
}
直到昨天一切都很好,但是当现在多个用户同时使用它时,脚本将在向大约 7-8 个朋友发布帖子后停止,并给出无法完成任务的错误。有没有更好的方法在Facebook上向多个人发帖?我该怎么办,会让这个表现得更好吗?任何建议将不胜感激。
检查日志异常:"发现错误 201 用户不可见"。
提前谢谢。
将 api 调用放入变量并检查变量怎么样?
$result = $facebook->api($selectedid.'/feed', 'post', array(
'picture' => '',
'message' => $name."something",
'name' => $config['app_title'],
'link' => $config['redirect_uri']."?invitation=".$id,
'caption' => '',
'description' => '',
'actions' => array(array('name' => 'Get Search',
'link' => 'http://www.google.com'))
));
因为如果成功,它会发回帖子的 id。
该错误是由于用户无法发布到他的朋友墙,我通过在发布之前通过运行 fql 检查"can_post"到用户的朋友墙来解决。解决方案可以在 查看。
检查Facebook用户是否可以在他的朋友墙上发帖