zoukankan      html  css  js  c++  java
  • twisted 学习笔记二:创建一个简单TCP客户端

     1 #coding=utf-8
     2 
     3 from twisted.internet import reactor,protocol
     4 
     5 class QuickClient(protocol.Protocol):
     6     def connectionMade(self):
     7         print dir(self.transport.getPeer())
     8         print "port:%s type:%s "%(self.transport.getPeer().port, self.transport.getPeer().type)
     9         print "connection to ",self.transport.getPeer().host
    10 
    11 
    12 class BasicClientFactory(protocol.ClientFactory):
    13     protocol = QuickClient
    14     def clientConnectionLost(self, connector, reason):
    15         print "connection lost ",reason.getErrorMessage()
    16         reactor.stop()
    17     def clientConnectionFailed(self, connector, reason):
    18         print "connection failed ",reason.getErrorMessage()
    19         reactor.stop()
    20 
    21 
    22 reactor.connectTCP('www.google.com', 80, BasicClientFactory())
    23 reactor.run()
    connectionMade:链接成功后自动调用
    Factory的作用是管理连接事件
    clientConnectionLost:连接断开或丢失时调用
    clientConnectionFailed:连接失败时调用

    transport为Protocol一个内建属性 getPeer 对象包含有连接信息(域名、端口、类型(TCP,UDP))
     
  • 相关阅读:
    匿名内部类(八)
    局部内部类(七)
    局部内部类(六)
    成员内部类(五)
    成员内部类(四)
    静态内部类(三)
    静态内部类(二)
    内部类(一)
    zip解压破解
    爱剪辑软件使用
  • 原文地址:https://www.cnblogs.com/bjdxy/p/3211136.html
Copyright © 2011-2022 走看看