2013-07-09 14 views
7

Sevgili Stackoverflowianers! Sevgili Facebook Geliştiriciler!Kullanıcı şifreyi değiştirdiği için oturum geçersiz hale getirildi -> hayır Şifre değiştirildi

Birkaç hafta önce bir Facebook-App oluşturdum. Bu sefer mükemmel çalıştı. Benim PHP-Script, access_token'in son kullanma tarihinden önce en az 10 gün olup olmadığını kontrol eder (otomatik olarak uzun bir son kullanma tarihine ayarlanır) ve eğer öyleyse (eğer> = son kullanma tarihi - 10) aynı kullanıcı için yeni bir access_token edinmeye çalışır. (benim, ben ve ben).

Sorun dün beri bana bir hata atar şudur:

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

Şimdi sorum şu: Ben FB şifremi değiştiren asla Nasıl bu hatayı atabilir ???

Bu sorunu çözmek için doğru yönde benim için herhangi bir ipucu var mı? Herhangi bir yardım için çok minnettar olurum.

Saygılarımızla,

AceLine

+0

O kadar çok kerede !!! o) –

+0

Aynı problemle yaşıyorum .. oO nasıl? – Crasher

cevap

0

Aslında sizin akışında hiçbir sorun yok. Simgenin süresi dolduğunda aslında bu hatayı atar.

Bu tür bir hatayı daha önce yaşadık ve ne yaptığımızı düzenli olarak kontrol ettikten sonra accessToken'un hala geçerli olduğunu kontrol ettik ve yeni bir tane oluşturup kaydettik. Bununla birlikte, kullanılacak accessToken'u ayarladığımızda, yerel veritabanına kaydetmeden önce de belirtecin ömrünü uzatıyoruz. (Bu sadece kaba bir koddur) Aşağıda örnek bir güncelleme var extendedAccessToken

Bkz:

// 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();