Twisted フレームワークを使用してサーバーを作成しようとしていて、データを複数回受信したい
class Echo(Protocol):
def connectionMade(self):
print " got connection from : " + str(self.transport.getPeer())
def dataReceived(self, data):
'''
get the client ip
'''
if(len(data)>40):
'''
initial setup message from the client
'''
client_details = str(self.transport.getPeer())#stores the client IP as a string
i = client_details.find('\'')#process the string to find the ip
client_details = client_details[i+1:]
j = client_details.find('\'')
client_ip = client_details[:j]
'''
Extract the port information from the obtained text
'''
data = data.split('@')
port1 = data[0]
port2 = data[1]
port3 = data[2]
if int(data) == 1:
method1(client_ip,port1)
if int(data) == 2:
method2(client_ip,port2)
私の質問: method1 と method2 は、クライアントから適切な整数データを含むメッセージを受信した場合にのみ呼び出されます。dataReceived() メソッド内でデータを受信するためにクライアントで待機できる方法はありますか、それとも dataReceived() メソッド自体で順番に行う必要がありますか?