diff --git a/services/auth.py b/services/auth.py index 6f8a967a..92358c7b 100644 --- a/services/auth.py +++ b/services/auth.py @@ -40,21 +40,23 @@ def auth_cache_key(req): def cache_auth_request(f): @wraps(f) async def decorated_function(*args, **kwargs): - req = args[0] - cache_key = auth_cache_key(req) - result = region.get(cache_key) - if result is not None: # Проверка наличия значения в кэше - logger.debug(f'CACHE found {cache_key}: {result}') - if isinstance(result, list) and len(result) == 2: # Проверка формата значения - return result try: - [user_id, user_roles] = await f(*args, **kwargs) - if user_id: - region.set(cache_key, [user_id, user_roles]) - return [user_id, user_roles] + req = args[0] + cache_key = auth_cache_key(req) + result = region.get(cache_key) + if result is not None: # Проверка наличия значения в кэше + logger.debug(f'CACHE found {cache_key}: {result}') + if isinstance(result, list) and len(result) == 2: # Проверка формата значения + return result + [user_id, user_roles] = await f(*args, **kwargs) + if user_id: + region.set(cache_key, [user_id, user_roles]) + return [user_id, user_roles] except Exception as e: - logger.error(f'Error processing cache_auth_request: {e}') - return None # Возвращение None в случае ошибки + import traceback + logger.error(e) + traceback.print_exc() + return None return decorated_function