URLs de início de sessão

A API Users fornece funções para criar URLs que permitem ao utilizador iniciar ou terminar sessão e, em seguida, ser redirecionado de volta para a sua aplicação.

UserService::createLoginUrl() e UserService::createLogoutUrl() recebem um URL de destino para a aplicação e devolvem um URL para iniciar ou terminar sessão que redireciona novamente para o URL fornecido posteriormente.

use google\appengine\api\users\User;
use google\appengine\api\users\UserService;

$user = UserService::getCurrentUser();
if (isset($user)) {
  echo sprintf('Welcome, %s! (<a href="%s">sign out</a>)',
               $user->getNickname(),
               UserService::createLogoutUrl('/'));
} else {
  echo sprintf('<a href="%s">Sign in or register</a>',
               UserService::createLoginUrl('/'));
}

O servidor Web de desenvolvimento simula Contas Google através das suas próprias funcionalidades de início e fim de sessão. Quando inicia sessão na sua aplicação no servidor Web de desenvolvimento, o servidor pede-lhe um endereço de email para usar na sessão. Consulte o artigo O servidor Web de desenvolvimento para mais informações.

Sugestão: uma forma fácil de restringir o acesso a uma parte da sua aplicação a utilizadores com sessão iniciada é usar o elemento de configuração login: required para o controlador de URL. Consulte o artigo Configurar uma app.