2012-01-27 7 views
9

私はthis tutorialにより長い有効期限のトークンを取得しようとしています。 Facebook接続はクライアント側(Js sdk)で行われます。私が取る手順は、次のとおりです。?通常 Facebookアクセストークンの有効期限が長くなった

  • カール」https://graph.facebook.com/oauth/access_token
    のclient_id = APP_ID & client_secret = APP_SECRET & grant_typeとしてaccess_tokenはを盗ん
  • 私のアプリの設定ページで 'offline_access廃止' 有効

    • = fb_exchange_token & fb_exchange_token = access_token "

    有効期限が60時間のトークン(access_tokenと同じかどうか)を返さないで、常に同じ正確な同じアクセストークンを返します。

    おかげで今のよう

  • 答えて

    6

    は、私の経験では、60日のトークンは「offline_accessを非推奨」設定を有効にした後にアプリを追加し、新規ユーザーのために返されるようです。古いユーザーは、[offline_access]の設定を削除する前から、2時間で停止しているようです。

    私はまた、永続トークンを取得するために、 'deprecate offline_access'設定に加えて 'Enhanced Auth Dialog'設定を設定する必要があることを示すいくつかのテストがあります。

    +0

    恐ろしい!ありがとう@Greg_Whalin、 'Enhanced Auth Dialog'が本当に必要でした – jlezard

    +0

    また、クライアントサイド(デスクトップ)の認証を使用して、「deprecate offline_access」と「enhanced auth dialog」の両方を有効にしてください。認証プロセス全体の後、私は60日間有効なアクセストークンを取得します。しかし、上記のエンドポイントを呼び出すことで妥当性を拡張することはできません。同じ有効期限<60日で同じトークンを常に返します。助言がありますか? – miloshes

    +0

    私はこれらのセットを持っていて、私は60日間のトークンを持っています。その後、私はアプリの設定からアプリを削除して、今は2時間のトークンしか得られませんでした。(どんなアイデアですか? – jasongregori

    3

    HTTP DELETEをme/permissionsに設定して2時間トークンを期限切れに設定することができます。これにより、ユーザーはアプリの再認証を強いられます。あなたに60日間のトークンを与えるはずです。

    関連する問題