Google Code disponible en: English - Español - 日本語 - 한국어 - Português - Pусский - 中文(简体) - 中文(繁體)
Las aplicaciones creadas con Python App Engine utilizan el estándar CGI para comunicarse con el servidor web. Cuando el servidor recibe una solicitud de la aplicación, ejecuta la aplicación con los datos de la solicitud en variables de entorno y en la secuencia de entrada estándar (para el envío de datos). La aplicación responde escribiendo la respuesta en el flujo de salida estándar, incluyendo el contenido y los encabezados HTTP.
Empezaremos implementando una pequeña aplicación que muestre un breve mensaje.
Crea un directorio que se llame helloworld. Todos los archivos de esta aplicación residirán en este directorio.
Dentro del directorio helloworld, crea un archivo llamado helloworld.py con el siguiente contenido:
print 'Content-Type: text/plain' print '' print 'Hello, world!'
Esta secuencia de comandos Python responde a una solicitud con un encabezado HTTP que describe el contenido, una línea en blanco y el mensaje Hello, world!.
Las aplicaciones creadas con App Engine tienen un archivo de configuración denominado app.yaml. Este archivo describe, entre otras cosas, las secuencias de comandos de controlador que se deben utilizar para cada URL.
Dentro del directorio helloworld, crea un archivo llamado app.yaml con el siguiente contenido:
application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: /.* script: helloworld.py
Este archivo de configuración ofrece (de arriba a abajo) la siguiente información sobre esta aplicación:
helloworld. Al registrar tu aplicación con App Engine en el paso final, tendrás que seleccionar un identificador único y actualizar este valor. Podrás utilizar el valor que quieras durante el desarrollo de la aplicación. Por ahora, mantén helloworld.1. Si ajustas este valor antes de subir nuevas versiones del software de tu aplicación, App Engine conservará las versiones anteriores y te permitirá recuperar una versión previa con la consola administrativa.python, versión "1". Es posible que se admitan lenguajes y entornos de tiempo de ejecución adicionales en el futuro./.* (todas las URL) se deben procesar con la secuencia de comandos helloworld.py.La sintaxis de este archivo es YAML. Para obtener una lista completa de opciones de configuración, consulta la referencia de app.yaml.
Con una secuencia de comandos de controlador y un archivo de configuración que asigne cada URL al controlador, la aplicación estará acabada. A continuación, podrás probarla con el servidor web incluido en el kit de desarrollo de software (SDK) de App Engine.
Inicia el servidor web con el siguiente comando, indicando la ruta de acceso al directorio helloworld:
google_appengine/dev_appserver.py helloworld/
El servidor web se ejecutará y recibirá las solicitudes en el puerto 8080. Para probar la aplicación, visita la siguiente URL en tu navegador web:
Para obtener más información sobre la ejecución del servidor web de desarrollo, incluida la forma de cambiar el número de puerto que utiliza, consulta la referencia del servidor web de desarrollo o ejecuta el comando con la opción --help.
Puedes dejar el servidor web en ejecución mientras desarrollas tu aplicación. El servidor web sabe cómo buscar cambios en tus archivos de origen y volver a cargarlos en caso necesario.
Pruébalo ahora: deja el servidor web en ejecución y, a continuación, edita helloworld.py para cambiar Hello, world! por otro texto. Vuelve a cargar http://localhost:8080/ para ver el cambio.
Para cerrar el servidor web, asegúrate de que la ventana del terminal esté activa y, a continuación, pulsa Control-C (o la tecla de interrupción adecuada de tu consola).
Puedes dejar el servidor web en ejecución para el resto de este tutorial. Si necesitas detenerlo, puedes volver a reiniciarlo ejecutando el comando anterior.
¡Ya tienes una aplicación App Engine completa! Puedes instalar esta sencilla aplicación de saludo ahora mismo y compartirla con usuarios de todo el mundo. Pero, antes de hacerlo, considera la posibilidad de utilizar un framework para aplicaciones web para facilitar la adición de funciones.
Para continuar, consulta la sección Uso del framework webapp.