Download Install Tutorial Docs FAQ Tools WikiLicense Team IRC Planet Involvement Shop Book

Introducción

CherryPy tiene una Interfaz de Programación de Aplicación (API) de 3 capas que tiene objetivo a diferentes audiencias.

  1. Gente que no quiere preocuparse acerca de HTTP; solo quieren empezar a escribir aplicaciones web.
  2. Gente que quiere manipular el contenido del mensaje HTTP directamente.
  3. Gente que quiere escribir herramientas, etc. Para manipular el proceso de la solicitud.

Aunque puede haber partes comunes en esas tres aéreas, se ha tenido cuidado para ver que la API se adhiere a una filosofía de "se necesita saber". Es por eso que, por ejemplo, una exception cherrypy.NotFound (No encontrado) se levanta en el evento de un estado 404 del servidor. A alguien de la categoría 1 anterior no le importa acerca del estado HTTP 404 e incluir esa información (levantando la excepción HTTPError(404) o algo así) les puede resultar confuso.

Secciones

  • Objeto de Aplicación
  • Manejadores de paginas?: donde la mayor parte del código de tu aplicación reside.
  • Objeto Solicitud? cherrypy.request contiene la información relacionada a la solicitud, aunque sea una descripción desagradable, eso es todo lo que hace, es una gran descarga de información. Al principio de cada solicitud HTTP, el objeto de solicitud existente se destruye y uno nuevo se crea, (una solicitud por cada hilo de ejecución). Por lo tanto, CherryPy (y tu) puede poner información en cherrypy.request y no preocuparse de que haga conflicto con otras solicitudes.
  • Objeto Respuesta cherrypy.response contiene la información relacionada a la respuesta, aunque sea una descripción desagradable, eso es todo lo que hace, es una gran descarga de información. Al principio de cada solicitud HTTP, el objeto de respuesta existente se destruye y uno nuevo se crea, (una respuesta por cada hilo de ejecución). Por lo tanto, CherryPy (y tu) puede poner información en cherrypy.response y no preocuparse de que haga conflicto con otras respuestas.
  • API de configuración?
  • Herramientas? cherrypy.tools es un contenedor para las herramientas integradas. Puedes agregar tus propias herramientas y hasta tus propias cajas de herramientas.
  • Errores y Excepciones?
  • Registro?

Otros objetos del primer nivel

  • cherrypy.thread_data: Contiene atributos que pertenecen únicamente al hilo de ejecución "actual". Cada solicitud la controla un solo hilo de ejecución, pero cada hilo de ejecución puede controlar múltiples solicitudes (secuenciales). Este atributo es un buen lugar para poner conexiones a la base de datos y otros objetos que son específicos a cada hilo de ejecución (opuesto a específicos a cada solicitud)

Hosted by WebFaction

Log in as guest/cpguest to create tickets