2013-07-09 55 views
7

親愛なるStackoverflowianers! Facebookデベロッパー様へパスワードが変更されたためにセッションが無効にされました - >パスワードが変更されていません

私は数週間前にFacebook-Appを作成しました。今回は完璧に働いていました。私のPHPスクリプトは、アクセストークンが期限切れになる前に少なくとも10日間(自動的に長い有効期限に設定されています)、もしそうならば(> =有効期限 - 10の場合)、同じユーザの新しいアクセストークンを取得しようとします(それは私、私と私です)。

問題は、昨日から、それは私にエラーをスローすることをある:

Fatal error: Uncaught OAuthException: Error validating access token: The session has been invalidated because the user has changed the password. 

今私の質問です:私はFB上の私のパスワードを変更したことがないとしてそれはどのようにこのエラーを投げることができます?

誰かがこの問題を解決するために正しい方向に私のためのヒントを持っていますか?私はどんな助けにも非常に感謝しています。

敬具、

AceLine

+0

そんなに一度に! ; o) –

+0

私は同じ問題を抱えています。 – Crasher

答えて

0

実際にあなたの流れでは何の問題もありません。トークンが期限切れになると、実際にはそのエラーがスローされます。

私たちは以前、この種のエラーが発生しました。私たちは定期的にaccessTokenが有効であることを確認してから、新しいものを生成して保存します。ただし、使用するaccessTokenを設定すると、ローカルデータベースに保存する前にトークンの寿命を延ばすこともできます。 (これは単に荒いコードである)ここで、サンプルのアップデートだextendedAccessToken

参照してください:

// Set the access token and extend it 
$facebookClient = new FacebookClient(); 
$facebookClient->setAccessToken($accessToken); 
$facebookClient->setExtendedAccessToken(); 

// Query your user that will have the updated access token and update it. 
$user = User::get($userId); 
$user->accessToken = $facebookClient->getAccessToken(); 
$user->update(); 
関連する問題