1

Facebookのドキュメントを読んでいますが、実際に最初にログインせずにページのアクセストークンを取得する方法を理解できないため、何かが欠けているに違いありません. PHP facebook API を使用して PHP 関数を作成しようとしています。これにより、サイトに新しいストーリーやチュートリアルを追加すると、サイトのアプリがページとしてそれらについての宣伝文句を myy facebook ページに自動的に投稿できます。

この関数は機能していますが、アクセス トークンは約 1 時間で期限切れになりますが、Graph API Explorer からアクセス トークンを取得した場合のみです。プログラムでページの access_token を取得し、PHP スクリプト内から毎回新しいものをクエリして、有効期限が切れず、ユーザーの操作を必要としないようにする方法を理解できないようです。

    function post_to_facebook($title, $message, $link, $picture) {

            require '../facebook/src/facebook.php';

            $page_token = 'xxx';

            $page_id = 'xx';

            $facebook = new Facebook(array(
                    'appId'  => '<app_id>',
                    'secret' => '<app_secret>',
                    'cookie' => false,
            ));

            $facebook->setAccessToken($page_token);

            try {
                    $ret_obj = $facebook->api('/'.$page_id.'/feed', 'POST', array(
                                            'caption' => $title,
                                            'link' => $link,
                                            'message' => $message,
                                            'picture' => $picture
                                     ));

            } catch(FacebookApiException $e) {
                    error_log($e->getType());
                    error_log($e->getMessage());

                    return false;
            }

            return true;
    }

グラフAPIエクスプローラーを介して手動で検索したり、ユーザーにログインさせたりすることなく、アクセストークンを取得する方法を誰かが説明できますか?

4

1 に答える 1

1

不可能です。

アクセストークンを取得するための唯一の正しい(そして合法的な)方法は、(ログインプロセスを介した)ユーザーインタラクションを使用することです。

于 2012-10-03T22:45:56.423 に答える