2010-04-20 22 views
10

Belirtilen bir IP adresindeki belirli bir bağlantı noktasında TCP/POST isteğini dinleyen bir twisted hizmeti (twistd ile başlatıldı) olmasını istiyorum. Şimdiye kadar, yerel ana bilgisayarda 8040 numaralı bağlantı noktasını dinleyen bir bükülmüş uygulama var. İyi çalışıyor, ancak sadece belirli bir IP adresini dinlemeyi istiyorum, 10.0.0,78.Twisted: Bir sunucuyu belirtilen bir IP adresine nasıl bağlarsınız?

Nasıl yapılır? Bu benim kod snippet'idir:

application = service.Application('SMS_Inbound') 

smsInbound = resource.Resource() 
smsInbound.putChild('75sms_inbound',ReceiveSMS(application)) 
smsInboundServer = internet.TCPServer(8001, webserver.Site(smsInbound)) 
smsInboundServer.setName("SMS Handling") 
smsInboundServer.setServiceParent(application) 

cevap

13

Ne aradığınız olduğunu interface argüman twisted.application.internet.TCPServer için:

smsInboundServer = internet.TCPServer(8001, webserver.Site(smsInbound), 
    interface='10.0.0.78') 

(gerçekten sadece ileriye bütün t.a.i.*Server sınıfların beri reactor.listenTCP() devraldığı Hangi Uygun protokol için reactor.listenXXX'a.)

İlgili konular