python - 如何将事件/ Hook 附加到我的 Bottle 应用收到的所有请求?

标签 python bottle

我想在每次请求后简单地打印几个换行符(当我的应用程序配置为冗长时),以便我可以轻松地在我的控制台中将它们分开。例如,我当前的详细输出看起来像这样(在实际应用程序中有更多的调试打印行):

### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728
### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728
### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728

我希望它看起来像这样:

### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728



### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728



### webserver->check_login: Checking session cookie for client at 127.0.0.1
### webserver->check_login: Credentials cookie was valid, client logged in
### webserver->render_secure_page: Rendering 'dashboard.html'
127.0.0.1 - - [05/Aug/2012 15:50:06] "GET /dashboard HTTP/1.1" 200 1728

无需在我的 100 多个 View 中手动添加打印品。

这可以做到吗?

最佳答案

要快速破解,您可以使用 hooks plugin .

from bottle import hook

@hook('after_request')
def separator():
    print 3 * "\n",

关于python - 如何将事件/ Hook 附加到我的 Bottle 应用收到的所有请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11817134/

相关文章:

python - "getaddrinfo failed",这是什么意思?

python - Bottle python程序在开发环境中运行,但不在现场环境中

python - 在for语句中,我能够得到预期的结果。但是为什么我用while语句却得不到预期的结果呢?

python - 如何在上传过程中不将整个文件加载到内存中

python - 如何使用cherrypy在 Bottle 中启用gzip压缩

python - 有没有办法只搜索元组列表中的第一个坐标?

python - 在 Python 中使用 subprocess.Popen 调用时,从命令行复制的命令未运行

python - PIL加载灰度图像的RGB矩阵

python - 如何修复 "Syntax error in module lambda_function"

python - 如何根据 Pandas 的日期时间列找到每个 id 的第一次出现?