3

トークンの拡張に関する公式ドキュメントを検索して読んだ後、ユーザーにログインしてURLを再度承認するように求めるよりも、ネイティブデスクトップアプリから長期間有効なアクセストークンを更新するより良い方法があるかどうかは明確にわかりません。この呼び出しは、デスクトップ アプリでは許可されていません。

GET /oauth/access_token?  
grant_type=fb_exchange_token&           
client_id={app-id}&
client_secret={app-secret}&
fb_exchange_token={short-lived-token} 

したがって、私が今見つけた唯一の選択肢は、トークンの有効期限が切れようとしているかどうかを検出することです.trueの場合、ユーザーをログインページにリダイレクトしてアプリを再承認しますが、あまり快適ではありません.他の方法を知っていますか?

4

1 に答える 1

2

あなたの質問によると、あなたは長命のトークンを更新したいと思っています.ヒットしたいサービスは、既存の長命トークンを更新するのではなく、認証フローから取得した短命トークンから長生きすることです

Web アプリで使用されるログイン フローにユーザーを送り返すことで、新しい長期間有効なトークンを生成できます。ユーザーは実際に再度ログインする必要はありません。ユーザーは既にアプリを承認しているため、すぐにリダイレクトされます。更新されたトークンを使用してログイン フローからアプリを削除します。

上記を行った後、新しい短命のトークンを取得し、次に長命のトークンに対して同じ交換を実行する必要があります。

詳細については、https://developers.facebook.com/docs/facebook-login/access-tokensを参照してください

于 2014-11-06T09:35:00.437 に答える