在龙卷风代理中同时获得警告和错误

时间:2016-01-18 09:07:17

标签: python python-2.7 proxy tornado

在我停止服务器和在此期间通过龙卷风代理前端提出请求之间,我似乎遇到了一些竞争条件。

我得到了非常有名的错误

WARNING:tornado.access:404 POST /request-url/eff74/36eb5e9f-def1-4689-ad58-3bf866798864/client-update (::1) 0.88ms
ERROR:tornado.general:Cannot send error response after headers written
WARNING:tornado.access:404 POST /request-url/eff74/36eb5e9f-def1-4689-ad58-3bf866798864/client-update (::1) 1.36ms
ERROR:tornado.general:Cannot send error response after headers written
WARNING:tornado.access:404 POST /request-url/eff74/36eb5e9f-def1-4689-

在源代码here

中描述

我能解决这个问题吗?

困惑点是我已经得到了404,那么为什么我在病房后会出现错误。

干杯

1 个答案:

答案 0 :(得分:0)

实际上,我的代码中有一个非常愚蠢的错误 Bug是代理功能,它处理"请求"没有发出"返回"函数声明。

示例:

def proxy_handler(self, request, response):
    # some task
    response.set_status(status_code)
    response.send("status_code: message")
    return # this was missing earlier

所以龙卷风试图发送已经发送的响应。因此得到错误

WARNING:tornado.access:404 POST /request-url/eff74/36eb5e9f-def1-4689-ad58-3bf866798864/client-update (::1) 1.36ms
ERROR:tornado.general:Cannot send error response after headers written

干杯