200 OK
を呼び出してミドルウェアの内部層が返すHTTP ステータス (例: ) をキャプチャする必要がある WSGI ミドルウェアがありますstart_response
。現在、私は次のことを行っていますが、リストを悪用することは私にとって「正しい」解決策ではないようです:
クラス TransactionalMiddlewareInterface(オブジェクト): def __init__(自己、アプリケーション、**構成): self.application = アプリケーション self.config = 構成 def __call__(自己、環境、start_response): ステータス = [] def local_start(stat_str, headers=[]): status.append(int(stat_str.split(' ')[0])) return start_response(stat_str, headers) 試す: 結果 = self.application(environ, local_start) 最後に: status = status[0] if status else 0 ステータス > 199 およびステータスの場合
リストの乱用の理由は、完全に含まれている関数内から親名前空間に新しい値を割り当てることができないためです。