【发布时间】:2017-06-22 12:13:50
【问题描述】:
在 Twisted Python 中,数据被写入协议的传输,但通过覆盖 dataReceived 方法接收。是否有从传输中读取的模式?这在使用 inlineCallbacks 实现状态时会很有帮助
例如:
class SomeProtocol(Protocol):
@defer.inlineCallbacks
def login(self):
self.transport.write('login')
resp = yield self.transport.read(5, timeout=1) # this doesn't exist
if resp != 'user:':
raise SomeException()
self.transport.write('admin')
resp = transport.read(9, timeout=1)
if resp != 'password:':
raise SomeException()
self.transport.write('hunter2')
# ... etc
【问题讨论】: