如何在 Tornado 中记录 HTTP 响应?
How to log HTTP response in Tornado?
我希望能够在 tornado 中记录 HTTP 请求和响应。
这似乎很容易做到 request:
def log_function(handler):
info = {
'Method' : handler.request.method,
'Host' : handler.request.host,
'URL' : handler.request.uri
}
响应如何达到同样的效果?可以通过调用
来检索响应 status_code
handler.get_status()
我如何获得回复的正文?
Tornado 不保存响应;它直接将其发送给客户端。如果您想记录响应,则必须自己保存。您可以在您的处理程序代码中执行此操作,也可以覆盖 write()
和 finish()
方法以在编写时拦截它。
我希望能够在 tornado 中记录 HTTP 请求和响应。 这似乎很容易做到 request:
def log_function(handler):
info = {
'Method' : handler.request.method,
'Host' : handler.request.host,
'URL' : handler.request.uri
}
响应如何达到同样的效果?可以通过调用
来检索响应 status_codehandler.get_status()
我如何获得回复的正文?
Tornado 不保存响应;它直接将其发送给客户端。如果您想记录响应,则必须自己保存。您可以在您的处理程序代码中执行此操作,也可以覆盖 write()
和 finish()
方法以在编写时拦截它。