From 2627c57b30cdf5170b915c785244d22640e76041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=B9=20=E6=9F=8F?= Date: Sat, 1 Feb 2025 14:47:21 +0900 Subject: [PATCH] bugfix LoggingMiddleware --- backend/app/core/operation.py | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/backend/app/core/operation.py b/backend/app/core/operation.py index e49a8a9..ae55759 100644 --- a/backend/app/core/operation.py +++ b/backend/app/core/operation.py @@ -11,25 +11,25 @@ import json class LoggingMiddleware(BaseHTTPMiddleware): async def dispatch(self, request: Request, call_next): - if request.method in ("POST", "PUT", "PATCH","DELETE"): - try: - request.state.body = await request.json() - except json.JSONDecodeError: - request.state.body = await request.body() - else: - request.state.body = None - + if request.method in ("POST", "PUT", "PATCH","DELETE"): try: - response = await call_next(request) - state = request.state - except Exception as e: - await self.log_error(request, e) - raise - - if hasattr(request.state, "user") and hasattr(request.state, "tenant"): - await self.log_request(request, response,state) + request.state.body = await request.json() + except json.JSONDecodeError: + request.state.body = await request.body() + else: + request.state.body = None - return response + try: + response = await call_next(request) + state = request.state + except Exception as e: + await self.log_error(request, e) + raise + + if hasattr(request.state, "user") and hasattr(request.state, "tenant"): + await self.log_request(request, response,state) + + return response async def log_request(self, request: Request, response,state): try: