python - 如何在 Tornado 中记录 HTTP 响应?

标签 python tornado

我希望能够在 Tornado 中记录 HTTP 请求和响应。 这似乎很容易通过请求来完成:

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() 方法以在写入时拦截它。

关于python - 如何在 Tornado 中记录 HTTP 响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42562718/

相关文章:

python - 获取 Cython 指针的值

proxy - 如何判断安装的 libcurl 是否启用了异步 DNS?

Python 变量覆盖自身

python - 覆盖设置和包默认值

javascript - 通过 flask 中的 ajax 调用访问 Tornado 中的 cookie

benchmarking - 在负载平衡的 Tornado 站点上使用 apache 基准获取失败的请求,但没有记录

python - 用另一个函数包装 tornado.gen.engine-wrapped 函数

python - 如何在 Tornado 上使用卡夫卡?

Python 计算变量类型列表中的字符串数,如果可能则不循环

python - 用 Python 编码的图像锐化算法