Facebook php sdk: getUser = 0

25. Februar 2014

Ich habe ja schonmal einen Artikel zum Thema “getUser liefert 0 zurück” geschrieben, aber seit neuestem hilft mir auch das nicht weiter. Egal was ich auch mache, beim ersten Versuch liefert, trotz erfolgreichem Erteilen der entsprechenden Rechte, getUser 0 zurück. Mir wars nach langem Suchen und Probieren dann zu blöd, ich habe als Fehlerquelle die Funktion getCode in base_facebook.php ausgemacht. Und wenn man die etwas modifiziert, klappt es auch wieder mit getUser:

  1. protected function getCode() {
  2. if (!isset($_REQUEST['code']) || !isset($_REQUEST['state'])) {
  3. return false;
  4. }
  5. //return $_REQUEST['code'];
  6. if ($this->state === $_REQUEST['state']) {
  7. // CSRF state has done its job, so clear it
  8. $this->state = null;
  9. $this->clearPersistentData('state');
  10. return $_REQUEST['code'];
  11. }else{
  12. return $_REQUEST['code'];
  13. }
  14. self::errorLog('CSRF state token does not match one provided.');
  15. return false;
  16. }

Nicht die sauberste Lösung, aber nichts anderes hat mein Problem gelöst.