Protocol 協議
Factory 工廠
reactor 反應器 (看做一個容器)
========= server.py =========
from twisted.internet import reactor
from twisted.internet.protocol import Factory,Protocol
class Echo(Protocol):
def connectionMade(self):
self.transport.write('hi,welcome!')
self.transport.loseConnection()
def dataReceived(self, data):
print(data)
self.transport.write('haha...'+data)
factory = Factory()
factory.protocol = Echo
reactor.listenTCP(8001,factory)
reactor.run()
========= client.py =========
from twisted.internet.protocol import Protocol,ClientFactoryfrom twisted.internet import reactorclass Echo(Protocol): def connectionMade(self): self.transport.write('hi, server') def dataReceived(self, data): print(data)class EchoClientFactory(ClientFactory): def startedConnecting(self, connector): print('connection starting ...') def buildProtocol(self, addr): print('addr') return Echo() def clientConnectionLost(self, connector, reason): print('lose reason',reason) def clientConnectionFailed(self, connector, reason): print('faild reason: ',reason)reactor.connectTCP('127.0.0.0',8001,EchoClientFactory())reactor.run()