2

ここ数日、たくさんの本を読んでいて、たくさんのことを学んだと確信しています。こうした Facebook のドキュメントは Web 全体に (悪い意味で) 広まり、人々は情報を探したり、さまざまなことを試したりしています。

私は次のようなことをしました:

  • ページのウォールへの投稿 (画像、リンク、テキスト)
  • プロフィールのウォールへの投稿

そこで、ページへの自動ポスターのようなものを作成することを考えました。しかし、想像してみてください。そのためには、有効期限のないアクセス トークンが必要です。

わかりました、問題ありません。私が読んできたものから、App Access Tokensがそれを処理し、スクリプトでcronを実行できます!

しかし、アクセストークンを使用して投稿を実行するにはどうすればよいでしょうか?

現在、ユーザー トークンを使用して、ログインしているユーザーの ID を取得できる場合は、このコードを使用していました。

FB.api('/<?=$album_id?>/photos?access_token=<?=$fanpage_token?>', 'post', {
    message: ementa,
    url: selected_image
    }, function(response) {
  if (!response || response.error) {
    alert('Falhou a publicar a ementa com imagem');
  } else {
    alert('Page Post ID: ' + response.id);
  }
});

ファン ページ トークンは、Graph API Explorer から手動で取得しました。これは、cronjob で使用されるためです。

アルバムIDも以前に取得しました。

これをアプリ トークンで使用するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

4

まず第一に、あなたはphpで拡張ユーザートークン(60日間続く)を得ることができます

$facebook = new Facebook(array(
            'appId' => APP_ID,
            'secret' => APP_SECRET,
            'fileUpload' => true
        ));     
$facebook->setExtendedAccessToken();

次に$facebook->getAccessToken()、それをデータベースに保存します。

その後、適切なユーザーウォールに何かを投稿したい場合は、$ facebookオブジェクトを作成し、既存のアクセストークンを設定して、次のことを行います...

$facebook = new Facebook(array(
        'appId' => $appId,
        'secret' => $appSecret,
        'fileUpload' => true
     ));
//set token 
    $facebook->setAccessToken($fbAccessToken);
    $facebook->api('/me/photos','post', $data);

これは、cronジョブで自律的に機能します。

于 2012-10-15T15:26:35.600 に答える
0

Facebook アプリケーション API の使用法について何日にもわたって調査した結果、 cbacligのおかげで、アプリケーションはいくつかのことを制御できず、ページ インサイトの確認、リアルタイム更新の作成などを実行する権限しかないことがわかりました。そのように。

このリンクでこれを発見しました。

リンクで回答を引用する(オフラインになった場合に備えて):

検索方法には、例で使用しているようなアプリケーション アクセス トークンだけでなく、実際のユーザー アクセス トークンが必要なようです。ログインしているユーザーのアクセス トークンを使用して同じクエリを試したところ、問題なく動作しました。https://github.com/arsduo/koala/wiki/OAuthの最初の例では、(OAuth リダイレクト、Javascript SDK などを介して) ユーザーのアクセス トークンを取得するさまざまな方法について説明しています。クエリ。

一般に、アプリ アクセス トークンは、アプリのインサイト データの取得、リアルタイム更新の登録、テスト ユーザーの生成など、アプリケーション固有の目的にのみ使用されます。

それが役立つかどうかお知らせください!

EDIT 11/11/12: ページ アクセス トークンが publish_stream と manage_pages にアクセスできることをついに発見しました。これにより、有効期限なしのアクセス トークンで公開できるようになります。

ユーザーの拡張アクセス トークンを使用して、ファン ページ アクセス トークンを取得する必要があります。それは期限切れになることはなく、それを使用してページとして永久にリクエストを行うことができます.

于 2012-10-22T08:28:59.443 に答える