Autentica usuarios

En esta parte de la explicación del código del libro de visitas para Python, se muestra cómo autenticar usuarios y mostrar un mensaje de bienvenida personalizado a los que acceden.

Esta página forma parte de un instructivo de varias páginas. Si deseas comenzar desde el principio y ver las instrucciones para la configuración, consulta Cómo crear un libro de visitas.

Usuarios que acceden

La clase MainPage define un controlador para solicitudes HTTP GET a la ruta de acceso raíz '/'. El controlador verifica si un usuario accedió:

class MainPage(webapp2.RequestHandler):

    def get(self):
        guestbook_name = self.request.get('guestbook_name',
                                          DEFAULT_GUESTBOOK_NAME)
        greetings_query = Greeting.query(
            ancestor=guestbook_key(guestbook_name)).order(-Greeting.date)
        greetings = greetings_query.fetch(10)

        user = users.get_current_user()
        if user:
            url = users.create_logout_url(self.request.uri)
            url_linktext = 'Logout'
        else:
            url = users.create_login_url(self.request.uri)
            url_linktext = 'Login'

        template_values = {
            'user': user,
            'greetings': greetings,
            'guestbook_name': urllib.quote_plus(guestbook_name),
            'url': url,
            'url_linktext': url_linktext,
        }

        template = JINJA_ENVIRONMENT.get_template('index.html')
        self.response.write(template.render(template_values))

Si el usuario ya accedió a tu aplicación, el método get_current_user() muestra un objeto User y la app muestra el sobrenombre del usuario. Si el usuario no accedió, el código redirecciona el navegador del usuario a la pantalla de acceso de la Cuenta de Google. El mecanismo de acceso de la Cuenta de Google envía al usuario a la aplicación después de acceder.

Para obtener más información, consulta la API de usuarios.