This page描述如何设置当连接到 客户端在生成响应之前丢失。你知道吗
有没有办法用klein做类似的事情?
下面是引用页面中的代码,它与扭曲的.web. 我想要这样的东西:
request.notifyFinish().addErrback(self._responseFailed, call)
这是在请求未完成时触发errback的代码,与klein一起工作。你知道吗
from twisted.web.resource import Resource
from twisted.web.server import NOT_DONE_YET
from twisted.internet import reactor
class DelayedResource(Resource):
def _delayedRender(self, request):
request.write("<html><body>Sorry to keep you waiting.</body></html>")
request.finish()
def _responseFailed(self, err, call):
call.cancel()
def render_GET(self, request):
call = reactor.callLater(5, self._delayedRender, request)
request.notifyFinish().addErrback(self._responseFailed, call)
return NOT_DONE_YET
resource = DelayedResource()
Klein处理程序被传递给一个常规的Twisted Web
Request
对象。您可以对它使用相同的notifyFinish
方法来获取中断响应通知。你知道吗相关问题 更多 >
编程相关推荐