Spaces:
Runtime error
Runtime error
Commit
·
862aa9a
1
Parent(s):
302d8c7
Add error handling in authentication middleware and improve session expiration check
Browse files
src/middlewares/_authentication.py
CHANGED
|
@@ -27,6 +27,8 @@ class AuthenticationMiddleware(BaseHTTPMiddleware):
|
|
| 27 |
request.state.user = user_payload
|
| 28 |
except HTTPException as e:
|
| 29 |
return JSONResponse(status_code=e.status_code, content=e.detail)
|
|
|
|
|
|
|
| 30 |
return await call_next(request)
|
| 31 |
|
| 32 |
def _require_auth(self, path: str):
|
|
|
|
| 27 |
request.state.user = user_payload
|
| 28 |
except HTTPException as e:
|
| 29 |
return JSONResponse(status_code=e.status_code, content=e.detail)
|
| 30 |
+
except Exception as e:
|
| 31 |
+
return JSONResponse(status_code=500, content="Internal server error")
|
| 32 |
return await call_next(request)
|
| 33 |
|
| 34 |
def _require_auth(self, path: str):
|
src/services/_session_service.py
CHANGED
|
@@ -35,4 +35,6 @@ class SessionService:
|
|
| 35 |
|
| 36 |
async def is_session_expired(self, token: str):
|
| 37 |
session = await self.get_session_by_token(token)
|
|
|
|
|
|
|
| 38 |
return session.expired_at < datetime.now()
|
|
|
|
| 35 |
|
| 36 |
async def is_session_expired(self, token: str):
|
| 37 |
session = await self.get_session_by_token(token)
|
| 38 |
+
if not session:
|
| 39 |
+
return True
|
| 40 |
return session.expired_at < datetime.now()
|