From 10f606bd158e007612bb86bc7dafdbfae6536113 Mon Sep 17 00:00:00 2001 From: martsforever Date: Sat, 27 Sep 2025 21:21:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=B0=86=20api=5Ftoken=20=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E4=BD=BF=E7=94=A8redis=E5=BF=AB=E9=80=9F=E5=AD=98?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/utils/api_secret_utils.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/app/utils/api_secret_utils.py b/app/utils/api_secret_utils.py index 105bda8..996a67e 100644 --- a/app/utils/api_secret_utils.py +++ b/app/utils/api_secret_utils.py @@ -1,5 +1,7 @@ from enum import Enum +from app.utils.redis_utils import redis_utils, remove_redis_cache + class ApiSecretStatus(Enum): valid = "valid" # 秘钥有效 @@ -13,22 +15,23 @@ class ApiSecretUtils(): # 验证秘钥状态 async def verify_secret(self, secret: str) -> ApiSecretStatus: - api_secret_status = self.cache.get(secret, None) - print("verify_secret", self.cache) + async with redis_utils.get_redis_connection() as redis_client: + cache_value = await redis_client.get(f"api_secret_status_${secret}") + print("cache_value", cache_value) + + api_secret_status = cache_value + print("verify_secret", api_secret_status, secret) return api_secret_status or ApiSecretStatus.not_exist # 保存秘钥状态 async def save_secret(self, secret: str, status: ApiSecretStatus): - print("save_secret", self.cache) - self.cache[secret] = status + print("save_secret", secret) + async with redis_utils.get_redis_connection() as redis_client: + await redis_client.set(f"api_secret_status_${secret}", str(status)) # 移除秘钥缓存 async def remove_secret(self, secret: str): - # self.cache.pop(secret, None) - if secret in self.cache: - del self.cache[secret] - print("remove_secret", secret) - print(await self.verify_secret(secret)) + await remove_redis_cache(f"api_secret_status_${secret}") api_secret_utils = ApiSecretUtils()