Я пытаюсь использовать this class, предоставленный скрученным в кадр моего потока tcp. Но формат по умолчанию, который у них есть, находится в байтовом порядке большого байта, но мне нужно читать в маленьком конце.twisted Int16StringReceiver little endian byte order
Так что я сделал:
class Player(basic.Int16StringReceiver):
structFormat = "<H"
def stringReceived(self, packet):
print ':'.join(x.encode('hex') for x in packet)
Но по какой-то причине stringReceived
редко вызывается. И клиент, и сервер находятся на одной машине, и я очень уверен, что клиент действительно отправил данные.
Так почему же stringReceived
не вызывается каждый раз данные получены.
Я попытался перекрывая dataReceived
:
class Player(basic.Int16StringReceiver):
structFormat = "<H"
def dataReceived(self, recd):
print ':'.join(x.encode('hex') for x in recd)
И это делает печать каждый раз, когда клиент отправляет данные. Так почему же не вызывается stringReceived
? Может быть, рама? Но почему?
Могу я увидеть протокол клиента? –