Articles of cherrypy

URL amigable para un servicio web REST con CherryPy

Estoy haciendo un servicio web RESTful utilizando CherryPy 3, pero tengo un problema: quiero poder responder a solicitudes como: / clientes / 1 / productos / 386, lo que significa que quiero todo el producto con ID 386 del cliente con ID 1. Así que trato de hacerlo con el MethodDispatcher de CherryPy’s así: class […]

cherrypy / dev / urandom (o equivalente) no encontrado – error

Estoy ejecutando un servidor cherrypy 3.2.0 con Python 2.5.1, que da el siguiente error cada pocos días en cualquier instrucción de la interfaz de usuario hasta que se elimina y se reinicia: [29/Mar/2012:06:37:57] HTTP Traceback (most recent call last): File “/usr/lib/python2.5/site-packages/CherryPy-3.2.0-py2.5.egg/cherrypy/_cprequest.py”, line 636, in respond File “/usr/lib/python2.5/site-packages/CherryPy-3.2.0-py2.5.egg/cherrypy/_cprequest.py”, line 97, in run File “/usr/lib/python2.5/site-packages/CherryPy-3.2.0-py2.5.egg/cherrypy/_cprequest.py”, line 57, […]

Sesiones CherryPy para el mismo dominio, puerto diferente.

Considere el siguiente guión. Lanzará dos subprocesos, cada uno de ellos una aplicación CherryPy (presione Ctrl + C o lo que sea que el combo KeyboardInterrupt esté en su sistema para terminar con ambos). Si lo ejecuta con CP 3.0 (teniendo cuidado de cambiar las líneas específicas 3.0 / 3.1 en “StartServer”), visite: http: // […]

pyinstaller: se ejecutan 2 instancias de mi aplicación cherrypy exe

Tengo una aplicación cherrypy que he hecho un exe con pyinstaller. Ahora, cuando ejecuto el exe, se carga dos veces en la memoria. Ver el administrador de tareas muestra la carga de la primera instancia en aproximadamente 1k, y luego una segunda instancia de las cargas de exe hte en aproximadamente 3k ram. Si cierro […]

¿Por qué no se captura CTRL-C y se llama a signal_handler?

Tengo la siguiente implementación estándar de captura de Ctrl + C : def signal_handler(signal, frame): status = server.stop() print(“[{source}] Server Status: {status}”.format(source=__name__.upper(), status=status)) print(“Exiting …”) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) En server.start() estoy iniciando una instancia de CherryPy con hilos. Creé el hilo pensando que tal vez debido a que CherryPy se está ejecutando, el hilo principal […]

Usando mapeos en CherryPy

En la sección “Despacho / Otros despachadores” de la documentación de CherryPy, hay un ejemplo de definición de mapeo de la función de expresión regular a vista de estilo Django, pero no hay ninguna indicación sobre cómo adjuntar esto a cherrypy.tree . ¿Cómo se supone que debes registrar este mapeo? Edición : Basado en el […]

No se puede llamar a un decorador dentro de la subclase importada de una aplicación cherrpy (árbol de sitio)

Estoy utilizando cherrypy como servidor web y quiero verificar el estado de inicio de sesión de un usuario antes de devolver la página. Esto funciona con los métodos en la clase de aplicación principal (en site.py ) pero da un error cuando llamo a la misma función decorada en el método en una clase que […]

Subiendo un archivo en ajax a CherryPy

Estoy intentando cargar muchos archivos a la vez en mi servidor CherryPy. Estoy siguiendo este tutorial que muestra el código PHP en el lado del servidor. La parte de JavaScript es simple. Aquí hay un resumen de lo que hace: function FileSelectHandler(e) { var files = e.target.files || e.dataTransfer.files; for (var i = 0, f; […]

¿Por qué necesito usar un servidor web, middleware, etc., para una aplicación Flask simple?

He estado desarrollando una aplicación MVP simple, y es hora de implementarla en mi servidor de producción para realizar pruebas externas más exhaustivas. Nunca recibirá una gran cantidad de tráfico, es solo algo que necesito que un grupo pequeño de usuarios realice las pruebas. Ahora siempre he ido con tres capas. Nginx / Apache> Guncicorn […]

Perfil CherryPy

He estado intentando comenzar a crear un perfil de mi servidor web CherryPy, pero la documentación carece de detalles sobre cómo se debe configurar esto. Entiendo que debería poder usar cherrypy.lib.profiler como middleware para montar mi servidor inicial. En este momento, tengo un código como el siguiente: server_app = ServerClass() cherrypy.tree.mount(server_app, ‘/’, ‘/path/to/config/file.cfg’) cherrypy.engine.start() cherrypy.engine.block() […]