miércoles, diciembre 16, 2009

Twisted, una pequeña introducción

Esta es una paqueña introducción a Twisted. Un framework de redes en Python, orientado a eventos.


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from twisted.internet import reactor
from twisted.internet import protocol
from twisted.python import log

class MiProtocolo(protocol.Protocol):

def connectionMade(self):
print "Conexion establecida con" % self.transport

def dataReceived(self, data):
self.transport.write("Me dijiste: %s" % data)

def connectionLost(self, reason):
print "Conexion Cerrada %s" % reason


class MyFactory(protocol.ClientFactory):
protocol = MiProtocolo

def main(argv = sys.argv):
log.startLogging(sys.stdout, setStdout = False)
reactor.listenTCP(8080, MyFactory())
reactor.run()


if __name__ == "__main__":
sys.exit(main())

Para probar esto podemos crear un socket con netcat, la navaja suzia de las redes:

nc localhost 8080

y al escribir algunos caracteres y presionar Control-D veremos como trabaja esto de lo orientado a eventos :)

No hay comentarios.: