4

Facebook用の非公式のPythonSDKを使用しています。これは多くのグラフAPI呼び出しで正常に機能しますが、最近のプロジェクトではより多くのFQLを使用する必要があります。特定のテーブル(通知など)では、アプリアクセストークンではなくユーザーアクセストークンが必要です。

使用する場合

graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&client_secret=YOUR_A‌​PP_SECRET&grant_type=client_credentials 

アプリトークンしか返ってこないようです。したがって、通知テーブルを呼び出すと、「102:このリソースを要求するにはユーザーアクセストークンが必要です」というメッセージが表示されます。

このプロジェクトはブラウザをまったく使用せず、主に通知と別のアプリから生成された投稿を検証するために作成されます。

この場合、ユーザートークンを受け取る最良の方法は何ですか?

ありがとうN

4

1 に答える 1

13

Facebook認証フローを使用して、ログインしたユーザーとアプリケーションを直接やり取りしない限り、ユーザーアクセストークンを取得することはできません。ユーザーなしで取得できる唯一のトークンはアプリケーショントークンであり、すでにカバーされています。

ユーザートークンは手動で作成できます。最も簡単な方法は、グラフエクスプローラーツールを使用することだと思います。右上のアプリケーションを選択し、[アクセストークンの取得]ボタンをクリックするだけで、必要な権限を確認できます。その後、生成されたトークンがテキストボックスに表示され、それをコピーして使用します。

それに関する問題は、アクセストークンが短命(数時間)であるということです。より長いものが必要な場合は、サーバー側の認証のみを実装するキャンバスアプリケーションを作成することをお勧めします。生きたトークン(60日)、それからあなたはそれを永続化してその間それを使うことができます。

于 2012-05-07T21:59:03.887 に答える