Někdy se mi objeví v logách: An active access token must be used to query information about the current user. Jak to řešit? Co jsem googlil, tak to znamená, že uživatel není přihlášen. Ale jak nemůže být přihlášen, když se mi na getUser() vrátí jeho id? Nemůže to znamenat, že prostě se přihlásil a odmítl mi práva? Jak to zjistit a případně i řešit?

Přitom kód mám takovýhle:

protected function createComponentFbLogin(Facebook $facebook) {
        $dialog = $facebook->createDialog('login');

        $dialog->onResponse[] = function (LoginDialog $dialog) {
            $fb = $dialog->getFacebook();

            if (!$fb->getUser()) {
                $this->flashMessage('Přihlášení přes Facebook nepodařilo, zkuste to později.', 'danger');
                return;
            }

            try {
                $me = $fb->api('/me');

        $user = $this->userFacade->findUserByFacebookId($fb->getUser());

                $this->user->login($user);

            } catch (FacebookApiException $e) {
                Debugger::log($e, 'facebook');
                $this->flashMessage('Přihlášení přes Facebook se nepodařilo, zkuste to později.', 'danger');
            }

            $this->redirect('this');
        };

        return $dialog;
    }
  • Comments:

  • Vyriešil si to nejako?

    by Peter Bocan at 26.4.2015 22:54

You must first log in to participate in this discussion