Articles of trenzado

proxy Python para incrustar un servicio de script de Google Apps en un iframe

Hay un encabezado “X-Frame-Options: SAMEORIGIN” que impide que el Script de aplicaciones se muestre en una página que no sea de sites.google.com (o docs.google.com) ¿Cómo puedo crear un proxy python para trabajar desde un IFrame? Sospecho que el proxy necesita reemplazar la etiqueta SAMEORIGIN y trabajar con comandos POST de estilo ajax. Este es un […]

¿Cuáles son las formas de ejecutar un script del lado del servidor para siempre?

Necesito ejecutar un script del lado del servidor como Python “para siempre” (o el mayor tiempo posible sin perder el estado), para que puedan mantener los sockets abiertos y reactjsr de forma asíncrona a eventos como los datos recibidos. Por ejemplo, si uso Twisted para la comunicación de socket. ¿Cómo manejaría algo como esto? ¿Estoy […]

Python retorcido: no se puede escribir en un proceso generado en ejecución

Mi pregunta es que, después de generar un proceso, el proceso hijo está en bucle para obtener datos de su stdin. Me gustaría escribir nuevos datos usando Echo.Process.pipes [0] .write (data) o Echo.Process.writeToChild (0, data), pero ambos no funcionan. ¿Alguien explicaría lo que está pasando? ¿O cómo puedo solucionar este problema? Este es el error […]

¿Twisted Framework Server haciendo conexiones como un cliente?

En primer lugar, déjame mostrarte mi código y el error que devuelve: print “before import” from twisted.internet import protocol # imports print “after protocol” from twisted.internet import reactor print “after reactor” from twisted.internet.endpoints import TCP4ServerEndpoint print “after import” class Echo(protocol.Protocol): “””docstring for Echo””” def connectionMade(self): cADDR = self.clnt = self.transport.getPeer().host print “…Connection made with {0}”.format(cADDR) […]

Pruebas de unidad de prueba utilizando Autobahn WebSocket

Estoy tratando de escribir pruebas de unidad para mi aplicación que usa Autobahn. Quiero probar mis controladores, los cuales reciben datos del protocolo, los analizan y reactjsn a ellos. Pero cuando mi prueba llega a un punto en que el protocolo debe desconectarse ( self.sendClose ), se genera un error. exceptions.AttributeError: ‘MyProtocol’ object has no […]

Sobrescribir la clase Autobahn / Twisted WebsocketClientProtocol

Quiero anular mi clase WebSocketClientFactory para permitir que una cola de trabajo se llene con los datos entrantes. Aquí está el código de conexión que estoy tratando factory = WebSocketClientFactory(“ws://localhost:7096”) job_queue = Queue.Queue() factory.protocol = BridgeSocket(job_queue) connectWS(factory) Y aquí está mi clase de socket: class BridgeSocket(WebSocketClientProtocol): def __init__(self,producer_queue): self.producer_queue = producer_queue def sendHello(self): self.sendMessage(“hello”) def […]

Biblioteca de cliente Python Jabber / XMPP para Twisted

Estoy buscando una biblioteca de Python para escribir clientes Jabber / XMPP usando el marco Twisted.

Pérdida de memoria en Python Twisted: ¿dónde está?

Tengo un servidor Twisted bajo carga. Cuando el servidor está bajo carga, el uso de la memoria aumenta y nunca se reclama (incluso cuando no hay más clientes). La próxima vez que se cargue, el uso de la memoria aumenta nuevamente. Aquí hay una instantánea de la situación en ese punto: La memoria RSS es […]

Retorcido: la creación de un ThreadPool y luego la daemonización conduce a lockings poco informativos

Estoy desarrollando una aplicación en red en Twisted, parte de la cual consiste en una interfaz web escrita en Django. Deseo usar el servidor WSGI de Twisted para alojar la interfaz web, y he escrito un plugin “tap” de trabajo que me permite usar twistd . Cuando se ejecuta el servidor con el indicador -n […]

Retorcido: aplazado que dispara repetidamente?

Deferred s Deferred son una excelente manera de realizar un procesamiento asíncrono en Twisted. Sin embargo, como el nombre lo indica, son para cálculos diferidos, que solo se ejecutan y terminan una vez, activando las devoluciones de llamada una vez. ¿Qué pasa si tengo un cálculo repetido, como hacer clic en un botón? ¿Hay algún […]