2

phpでアクセストークンの有効期限が切れる時刻を確認するにはどうすればよいですか?

4

2 に答える 2

5

signed_requestで Facebook から最初に受け取ったトークンは、2 時間または 7200000 ミリ秒または 7200 秒で期限切れになります。以下のリクエストでトークンを拡張すると、応答で 5184000 秒の新しい有効期限が返され、60 日に変換されます。私が通常行うことは、エポック以降の現在の Unix 時間 (ミリ秒単位) に加算されたミリ秒単位の時間を保存し、必要に応じてその時間を継続的にチェックすることです。

トークンの拡張:

https://graph.facebook.com/oauth/access_token?             
    client_id=APP_ID&
    client_secret=APP_SECRET&
    grant_type=fb_exchange_token&
    fb_exchange_token=EXISTING_ACCESS_TOKEN 

例として、クライアント側でソース情報を要求し、次のチェックを行います..

if (response.user.sources.FACEBOOK.expires > new Date().getTime() ) {
    //do something
}
于 2012-07-27T18:34:48.653 に答える
0

なぜそれを決定しようとするのかわかりませんか? ユーザーがアプリの認証を解除したり、パスワードを変更したりすると、いつでもアクセス トークンが期限切れになる可能性があります。

この Facebook を読む - ハウツー: 期限切れのアクセス トークンを処理する

また、Facebook はすべてのアプリに 60 日間のトークンを付与する方向に進んでいると思います。私は間違っているかもしれませんが、オフライン アクセス トークンの非推奨を有効にすると、ap には 60 日間のトークンが付与されます。ユーザーがアプリに再度アクセスすると、そのトークンは 60 日間有効になります。

于 2012-07-05T06:34:16.533 に答える