Hola Mundo en Google App Engine con Python

Hola mundo, esta aplicación solo sirve un archivo de texto plano al navegador con el famoso mensaje “Hola Mundo”

Crear un manejador de solicitud

Un manejador de solicitud es una clase Python que responde a una solicitud HTTP en la url que nosotros le indiquemos. En el manejador se pueden definir diferentes respuestas en función del método HTTP de la solicitud (POST, GET, etc)

  • Crear una carpeta llamada “holamundo
  • Dentro de la carpeta crear ahora un archivo llamado “holamundo.py” con el siguiente contenido:
    import webapp2
    
    class MainPage(webapp2.RequestHandler):
        def get(self):
            self.response.headers['Content-Type'] = 'text/plain'
            self.response.write('!Hola, Mundo!')
    
    app = webapp2.WSGIApplication([
        ('/', MainPage),
    ], debug=True)
    

    Este archivo python responde a una petición HTTP en la url principal “/” con una cabecera ‘Content-Type’ para describir el contenido (text/plain) y un mensaje “¡Hola, mundo!”

Crear el archivo de configuración

Una aplicación de app engine debe de contener un archivo “app.yaml” que entre otras cosas describe que manejador de solicitud debe responder a que urls.

  • Dentro de la carpeta “holamundo” crear el archivo app.yaml con el siguiente contenido:
    application: holamundo
    version: 1
    runtime: python27
    api_version: 1
    threadsafe: yes
    
    handlers:
    - url: .*
      script: holamundo.app
    
    libraries:
    - name: webapp2
      version: "2.5.2"
    

De arriba a abajo, este archivo de configuración dice lo siguiente:

  • “version” describe la versión de la aplicación, en este ejemplo la 1, si se actualiza éste valor y se vuelve a subir la aplicación, app engine mantendrá una copia de las versiónes anteriores para permitir regresar a ellas en caso de ser necesario.
  • “runtime” y “api_version” indican en que versión del lenguaje se ejecutará la aplicación, actualmente solo se soporta el valor “python27” para la versión 2.7 y la api 1, google espera ser compatible con más versiones en un futuro.
  • “threadsafe” indica que una solo instancia de la aplicación puede atender multiples peticiones a la vez. Todas la aplicaciones de app engine deben ser “threadsafe”
  • Dentro del apartado de Handlers, podemos definir urls o expresiones regulares para direccionar las peticiones a manejadores de solicitudes, En este ejemplo, cada petición que concuerde con la expresión regular “/.*”(todas las solicitudes) serán atendidas por el código “holamundo”

Probar la aplicación

Con la utilidad “google app engine launcher” seleccionar la opción de “File”->”Add Existing Application”, y en la interfaz especificar la ruta de la carpeta llamada “holamundo” y presionar “Add”.

app-engine-hola-mundo

Una vez con el proyecto agregado se puede seleccionar y presionar el botón verde “Run” para ejecutar la aplicación. Después presionar el botón “browse” para abrir el navegador y ver la aplicación corriendo, si todo se hizo correctamente el navegador debe de mostrar el mensaje de !Hola, Mundo!

Hola mundo en el navegador

One thought on “Hola Mundo en Google App Engine con Python

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *