如果我使用队列生成响应数据,我应该如何检测客户端是否与我的gevent网络服务器断开连接?现在我一直收到Broken pipe
错误,但是我不太明白我应该在哪里捕获这个异常(回溯只包含gevent自己的pywsgi.py
和socket.py
文件而我的代码都没有)。感谢。
答案 0 :(得分:2)
如果您从WSGI应用程序返回队列,我不知道该怎么做(如果我理解你正在做什么)。
如果您可以以不同的方式构建应用程序并使用WSGI的write(),那么您可以捕获这样的套接字异常:
def application(environ, start_response):
write = start_response('200 OK', [])
try:
write("response")
except socket.error, ex:
print ex