refactor: 将 check_hf_token 函数移到更合理的位置
Browse files将 check_hf_token 函数从文件末尾移到全局变量声明之后,使其位置更符合代码逻辑结构
app.py
CHANGED
|
@@ -16,6 +16,7 @@ import hashlib
|
|
| 16 |
import logging
|
| 17 |
from PIL.ExifTags import TAGS
|
| 18 |
from gradio_client import Client, handle_file
|
|
|
|
| 19 |
|
| 20 |
# 设置日志
|
| 21 |
logging.basicConfig(level=logging.INFO)
|
|
@@ -27,6 +28,22 @@ MAP_PATH = "char_map.json"
|
|
| 27 |
hf_token = os.getenv("read_token")
|
| 28 |
|
| 29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
# --- 全局初始化模型(启动时加载一次) ---
|
| 31 |
class Recognizer:
|
| 32 |
def __init__(self, model_path: str = MODEL_PATH, map_path: str = MAP_PATH):
|
|
@@ -228,22 +245,6 @@ except Exception as e:
|
|
| 228 |
recognizer = None
|
| 229 |
|
| 230 |
|
| 231 |
-
def check_hf_token(token):
|
| 232 |
-
headers = {"Authorization": f"Bearer {token}"}
|
| 233 |
-
# 访问 HF 的身份验证接口
|
| 234 |
-
response = requests.get("https://huggingface.co/api/whoami-v2", headers=headers)
|
| 235 |
-
|
| 236 |
-
if response.status_code == 200:
|
| 237 |
-
user_info = response.json()
|
| 238 |
-
logger.info(f"✅ Token 有效!")
|
| 239 |
-
logger.info(f"👤 用户名: {user_info.get('name')}")
|
| 240 |
-
logger.info(f"🔑 权限类型: {user_info.get('auth', {}).get('type', 'N/A')}")
|
| 241 |
-
else:
|
| 242 |
-
logger.error(f"❌ Token 无效或已过期。")
|
| 243 |
-
logger.error(f"🚫 错误代码: {response.status_code}")
|
| 244 |
-
logger.error(f"📄 返回信息: {response.text}")
|
| 245 |
-
|
| 246 |
-
|
| 247 |
# --- API 路由 ---
|
| 248 |
@app.post("/upload", response_model=List[Dict[str, str]])
|
| 249 |
async def upload_image(request: Request, file: UploadFile = File(...)):
|
|
|
|
| 16 |
import logging
|
| 17 |
from PIL.ExifTags import TAGS
|
| 18 |
from gradio_client import Client, handle_file
|
| 19 |
+
import requests
|
| 20 |
|
| 21 |
# 设置日志
|
| 22 |
logging.basicConfig(level=logging.INFO)
|
|
|
|
| 28 |
hf_token = os.getenv("read_token")
|
| 29 |
|
| 30 |
|
| 31 |
+
def check_hf_token(token):
|
| 32 |
+
headers = {"Authorization": f"Bearer {token}"}
|
| 33 |
+
# 访问 HF 的身份验证接口
|
| 34 |
+
response = requests.get("https://huggingface.co/api/whoami-v2", headers=headers)
|
| 35 |
+
|
| 36 |
+
if response.status_code == 200:
|
| 37 |
+
user_info = response.json()
|
| 38 |
+
logger.info(f"✅ Token 有效!")
|
| 39 |
+
logger.info(f"👤 用户名: {user_info.get('name')}")
|
| 40 |
+
logger.info(f"🔑 权限类型: {user_info.get('auth', {}).get('type', 'N/A')}")
|
| 41 |
+
else:
|
| 42 |
+
logger.error(f"❌ Token 无效或已过期。")
|
| 43 |
+
logger.error(f"🚫 错误代码: {response.status_code}")
|
| 44 |
+
logger.error(f"📄 返回信息: {response.text}")
|
| 45 |
+
|
| 46 |
+
|
| 47 |
# --- 全局初始化模型(启动时加载一次) ---
|
| 48 |
class Recognizer:
|
| 49 |
def __init__(self, model_path: str = MODEL_PATH, map_path: str = MAP_PATH):
|
|
|
|
| 245 |
recognizer = None
|
| 246 |
|
| 247 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 248 |
# --- API 路由 ---
|
| 249 |
@app.post("/upload", response_model=List[Dict[str, str]])
|
| 250 |
async def upload_image(request: Request, file: UploadFile = File(...)):
|