Files

1 line
1.6 KiB
JSON

{"repo": "chenwr727/yuanbao-free-api", "files": {"src/config.py": {"e773d6652fc50e509ac9ccfde00cc3461705c6cd": {"t": 1785768883.2471313, "n": 1232, "h": "c47ef3d8eafc6b61", "c": "\"\"\"应用配置模块\"\"\"\n\nimport logging\nfrom typing import List\n\nfrom pydantic import Field\nfrom pydantic_settings import BaseSettings, SettingsConfigDict\n\nlogger = logging.getLogger(__name__)\n\n\nclass Settings(BaseSettings):\n \"\"\"应用配置\"\"\"\n\n api_keys: str = Field(\n default=\"sk-your-api-key-here\",\n description=\"允许的 API Key 列表(逗号分隔)\",\n )\n agent_id: str = \"naQivTmsDa\"\n page_url: str = \"https://yuanbao.tencent.com/chat/naQivTmsDa\"\n page_timeout: int = 60000\n login_timeout: int = 120000\n qrcode_path: str = \"qrcode.png\"\n header_timeout: float = 3.0\n header_api_pattern: str = \"yuanbao.tencent.com/api\"\n upload_host: str = \"hunyuan-prod-1258344703.cos.accelerate.myqcloud.com\"\n\n model_config = SettingsConfigDict(\n env_file=\".env\",\n env_file_encoding=\"utf-8\",\n case_sensitive=False,\n )\n\n @property\n def api_keys_list(self) -> List[str]:\n \"\"\"获取 API Key 列表\"\"\"\n return [key.strip() for key in self.api_keys.split(\",\") if key.strip()]\n\n\nsettings = Settings()\n\n\ndef validate_api_key(api_key: str) -> bool:\n \"\"\"验证 API Key 是否有效\n\n Args:\n api_key: 待验证的 API Key\n\n Returns:\n bool: 验证是否通过\n \"\"\"\n return api_key in settings.api_keys_list\n"}}}}