Facebookページがあり、そこから何かを取得したい。最初はフィードであり、私が読んだものからは公開されています(access_tokenは必要ありません)。しかし、私もイベントを取得したい...そしてそれらはパブリックではなく、access_tokenが必要です。
ユーザーがFacebookなどにログインするのは望ましくありません。この唯一のページからできるすべてのデータをプッシュしたいだけです。これが、私がここで見つけた多くの例と https://developers.facebook.com/blog/post/500/ をすでに破棄している理由です。私は興味がありません。
私が欲しいのは、私のFacebookアプリケーションには、私が所有するこの1つのFacebookページ(管理者)からデータをプッシュするための完全な許可とaccess_tokenがあることです。これは可能ですか?私はすでに多くのことを試しましたが、何もうまくいかないようです。
クリックしてみました: https://www.facebook.com/dialog/oauth?client_id=150635421702954&redirect_uri=http://MY_URL/&scope=manage_pages&response_type=token&fields=access_token -MY_URLを自分のサイトに変更そして、私が所有するすべてのページを編集する許可を要求します。私が望んでいたものではなかったとしても、私はクリックしましたが、代わりにaccess_tokenがありませんでした...
manage_pages
パーミッションを選択します(user_events
パーミッションも必要な場合があります)me/accounts
接続にアクセスし、ページのaccess_token
をコピーしますaccess_token
をGETフィールドに追加しますPAGE_ID/events
)Facebookアプリにページへの永続的なアクセスを許可する場合は、こちらをご覧ください(あなた/アプリの所有者がログアウトしている場合でも):
http://developers.facebook.com/docs/opengraph/using-app-tokens/
「アプリのアクセストークンは、アプリの設定でアプリケーションシークレットを更新しない限り、期限切れになりません。」
これについてのドキュメントは、見つけるのが少し難しいとは言えないにしても、良いものです。
ノードの fbgraph を初期化した後、次を実行できます。
var facebookAccountID = yourAccountIdHere
graph
.setOptions(options)
.get(facebookAccountId + "/accounts", function(err, res) {
console.log(res);
});
次の場所にある、取得するトークンを含むJSON応答を受信します。
res.data[0].access_token