Verlängerung der Gültigkeit des Zugriffstokens bei fehlender offline_access-Berechtigung
Seit der Abschaffung der offline_access-Berechtigung im Facebook-Authentifizierungsablauf wird die Gültigkeit des Zugriffstokens verlängert ist zu einer Herausforderung geworden. Obwohl in der Dokumentation darauf hingewiesen wird, dass serverseitig von OAuth generierte Zugriffstokens eine verlängerte Gültigkeitsdauer haben sollten, ist dies nicht der Fall.
Um dieses Problem zu beheben, wurde der Datei base_facebook.php eine neue Funktion hinzugefügt. Mit dieser Funktion, getExtendedAccessToken(), können Entwickler ein neues Zugriffstoken erhalten, das innerhalb von 60 Tagen abläuft.
Verwendung:
Um diese Funktion zu nutzen, fügen Sie einfach Folgendes hinzu Code in Ihre Datei base_facebook.php ein und rufen Sie sie auf:
public function getExtendedAccessToken(){ // OAuth request to obtain extended access token $access_token_response = $this->_oauthRequest( $this->getUrl('graph', '/oauth/access_token'), array( 'client_id' => $this->getAppId(), 'client_secret' => $this->getAppSecret(), 'grant_type' => 'fb_exchange_token', 'fb_exchange_token' => $this->getAccessToken() ) ); }
Wichtig Hinweis:
Damit diese Funktion funktioniert, muss in den erweiterten Einstellungen der Entwickler-App „Offline-Zugriff veraltet“ aktiviert werden.
Aktualisierte SDK-Funktion:
Seit dem 14. August 2012 wurde das offizielle Facebook PHP SDK aktualisiert. Der Funktionsname wurde in setExtendedAccessToken geändert und das SDK speichert das erweiterte Zugriffstoken jetzt in persistenten Daten, anstatt es zurückzugeben. Um das neue Zugriffstoken abzurufen, verwenden Sie die Funktion getAccessToken().
Das obige ist der detaillierte Inhalt vonWie kann ich die Gültigkeit des Facebook-Zugriffstokens nach der Einstellung der Berechtigung „offline_access' verlängern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!