您的位置:首页 > 编程语言 > Python开发

python手记-twisted(4)

2016-07-09 17:22 381 查看
from twisted.internet.protocol import Protocol
from twisted.internet import reactor
from twisted.internet.protocol import Factory
from twisted.internet.endpoints import TCP4ServerEndpoint
#http://blog.csdn.net/myhaspl
class Echo(Protocol):

def connectionMade(self):
self.factory.numProtocols=self.factory.numProtocols+1
self.transport.write("welcome!\nthere are currently %d open connections.\n"%(self.factory.numProtocols,))

def dataReceived(self,data):
mydata=data.strip()
if mydata!="quit" and  mydata!="quit\r\n" and mydata!="quit\r":
self.transport.write(self.factory.message+data)
else:
self.transport.write(self.factory.message+"byebye\n")
self.transport.numProtocols=self.factory.numProtocols-1
self.transport.loseConnection()
def connectionLost(self, reason):
self.factory.numProtocols = self.factory.numProtocols - 1

#http://blog.csdn.net/myhaspl
class EchoFactory(Factory):
#use the default buildProtocol to create protocol
protocol=Echo
numProtocols=0

def __init__(self,message=None):
self.message=message or "hello,world"
#http://blog.csdn.net/myhaspl
endpoint=TCP4ServerEndpoint(reactor,8001)
endpoint.listen(EchoFactory("myhaspl:"))
reactor.run()
未经博主允许不得转载。http://blog.csdn.net/myhaspl

本博客所有内容是原创,如果转载请注明来源

http://blog.csdn.net/myhaspl/

$ telnet 120.55.*.* 8001Trying 120.55.*.* ...Connected to 120.55.*.* .Escape character is '^]'.welcome!there are currently 1 open connections.hellomyhaspl:helloworldmyhaspl:worldquitmyhaspl:byebyeConnection closed by foreign host.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: