代码优化
This commit is contained in:
parent
924537fa4c
commit
1de7afb771
|
|
@ -1,14 +1,25 @@
|
||||||
|
import os
|
||||||
|
from pathlib import Path
|
||||||
from fastapi import Request
|
from fastapi import Request
|
||||||
from fastapi.responses import JSONResponse
|
from fastapi.responses import JSONResponse
|
||||||
|
from public_function.public_func import read_config
|
||||||
|
from public_function.redis_task_manager import RedisTaskManager
|
||||||
|
|
||||||
|
config_path = os.path.join(Path(__file__).resolve().parent, 'config.yaml')
|
||||||
|
config = read_config(config_path)
|
||||||
|
redis_conn = RedisTaskManager(config)
|
||||||
|
|
||||||
|
|
||||||
|
# TOKEN = "opB4ztbdw45xFoJbXti20520bsEq3UDKKAtiDWHnGjjhP6v0KNFjqBM7bfzto6GLdUPviYnVdCgdCJYqe42nPoy6mvW59F3TPQZu"
|
||||||
|
|
||||||
TOKEN = "opB4ztbdw45xFoJbXti20520bsEq3UDKKAtiDWHnGjjhP6v0KNFjqBM7bfzto6GLdUPviYnVdCgdCJYqe42nPoy6mvW59F3TPQZu"
|
|
||||||
|
|
||||||
|
|
||||||
async def verify_tk_token(request: Request, call_next):
|
async def verify_tk_token(request: Request, call_next):
|
||||||
"""鉴权中间件"""
|
"""鉴权中间件"""
|
||||||
|
|
||||||
token = request.headers.get("token")
|
token = request.headers.get("token")
|
||||||
if token != TOKEN:
|
if not redis_conn.check_field_exists('user_token', token):
|
||||||
return JSONResponse(status_code=401, content={"detail": "token 验证失败"})
|
return JSONResponse(status_code=401, content={"detail": "token 验证失败"})
|
||||||
|
# if token != TOKEN:
|
||||||
|
# return JSONResponse(status_code=401, content={"detail": "token 验证失败"})
|
||||||
return await call_next(request)
|
return await call_next(request)
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,34 @@ class RedisTaskManager:
|
||||||
print(f"读取Redis数据时发生错误: {e}")
|
print(f"读取Redis数据时发生错误: {e}")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def check_field_exists(self, key: str, field: str) -> bool:
|
||||||
|
"""检查字段是否存在"""
|
||||||
|
try:
|
||||||
|
exists = self.redis_client.hexists(key, field)
|
||||||
|
return exists
|
||||||
|
except Exception as e:
|
||||||
|
print(f"检查字段存在失败: {e}")
|
||||||
|
return False
|
||||||
|
|
||||||
|
def delete_field(self, key: str, field: str) -> bool:
|
||||||
|
"""删除HSET中的字段"""
|
||||||
|
try:
|
||||||
|
result = self.redis_client.hdel(key, field)
|
||||||
|
return result > 0
|
||||||
|
except Exception as e:
|
||||||
|
print(f"删除字段失败: {e}")
|
||||||
|
return False
|
||||||
|
|
||||||
|
def write_string_to_h_set(self, key: str, field: str, value: str) -> bool:
|
||||||
|
"""将字符串写入Redis HSET"""
|
||||||
|
# key 默认为 user_token, field 默认为 token 值,value 为 123
|
||||||
|
try:
|
||||||
|
result = self.redis_client.hset(key, field, value)
|
||||||
|
return result > 0
|
||||||
|
except Exception as e:
|
||||||
|
print(f"写入HSET失败: {e}")
|
||||||
|
return False
|
||||||
|
|
||||||
def add_task_to_set(self, task_data: Dict[str, Any]) -> bool:
|
def add_task_to_set(self, task_data: Dict[str, Any]) -> bool:
|
||||||
"""添加任务到Redis集合"""
|
"""添加任务到Redis集合"""
|
||||||
try:
|
try:
|
||||||
|
|
@ -173,3 +201,16 @@ class RedisTaskManager:
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"清空任务失败: {e}")
|
print(f"清空任务失败: {e}")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
import os
|
||||||
|
from pathlib import Path
|
||||||
|
from public_function.public_func import read_config
|
||||||
|
|
||||||
|
config_path = os.path.join(Path(__file__).resolve().parent, 'config.yaml')
|
||||||
|
config = read_config(config_path)
|
||||||
|
redis_conn = RedisTaskManager(config)
|
||||||
|
token = "opB4ztbdw45xFoJbXti20520bsEq3UDKKAtiDWHnGjjhP6v0KNFjqBM7bfzto6GLdUPviYnVdCgdCJYqe42nPoy6mvW59F3TPQZu"
|
||||||
|
# redis_conn.write_string_to_h_set("user_token", token, 1)
|
||||||
|
print(redis_conn.check_field_exists("user_token", token))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue