Pyramid添加Middleware的方法實(shí)例
假設(shè)我們要添加一個(gè)我們自己的Middleware,用來(lái)記錄每次請(qǐng)求的日志
下面就是一個(gè)符合規(guī)范的Middleware, 構(gòu)造函數(shù)中接受一個(gè)WSGI APP, __call__返回一個(gè)WSGI APP.
class LoggerMiddleware(object):
'''WSGI middleware'''
def __init__(self, application):
self.app = application
def __call__(self, environ, start_response):
# write logs
try:
return self.app(environ, start_response)
except Exception, e:
# write logs
pass
finally:
# write logs
pass
在項(xiàng)目的__init__.py的main函數(shù)中, 在config.make_wsgi_app上包上一層我們的Middleware:
from pyramid.config import Configurator
config = Configurator()
config.scan()
app = config.make_wsgi_app()
# Put middleware
app = LoggerMiddleware(app)
serve(app, host='0.0.0.0')
相關(guān)文章
Python打印詳細(xì)報(bào)錯(cuò)日志,獲取報(bào)錯(cuò)信息位置行數(shù)方式
這篇文章主要介紹了Python打印詳細(xì)報(bào)錯(cuò)日志,獲取報(bào)錯(cuò)信息位置行數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09matplotlib相關(guān)系統(tǒng)目錄獲取方式小結(jié)
這篇文章主要介紹了matplotlib相關(guān)系統(tǒng)目錄獲取方式小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02python對(duì)日志進(jìn)行處理的實(shí)例代碼
本篇文章給大家分享了關(guān)于python處理日志的方法以及相關(guān)實(shí)例代碼,有興趣的朋友們學(xué)習(xí)下。2018-10-10如何基于Python實(shí)現(xiàn)電子郵件的發(fā)送
這篇文章主要介紹了如何基于Python實(shí)現(xiàn)電子郵件的發(fā)送,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12