0

私は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ユーザーが表示されません」が見つかりました。

前もって感謝します。

4

2 に答える 2

0

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が返されます。

于 2012-05-09T07:30:45.853 に答える
0

このエラーは、ユーザーが友達のウォールに投稿できないことが原因でした。これは、ユーザーの友達のウォールに「can_post」をチェックするためにfqlを実行して投稿する前に、チェックを行うことで解決しました。ソリューションはで表示できます。

Facebookユーザーが友達のウォールに投稿できるかどうかを確認する

于 2012-06-04T09:38:47.313 に答える