From f67f3ca1d62067d967da8d4bbe1469f5b762aa73 Mon Sep 17 00:00:00 2001 From: "Mr.Xia" <1424473282@qq.com> Date: Thu, 28 May 2026 12:24:24 +0800 Subject: [PATCH] =?UTF-8?q?fix(danding=5Fapi):=20=E4=BB=8ENoneBot2=20drive?= =?UTF-8?q?r.config=E8=AF=BB=E5=8F=96token?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit .env 被 NoneBot2 读入 driver.config(小写键名)而非 os.environ, 改用 getattr(driver.config, "danding_api_token") 获取。 Co-Authored-By: Claude Opus 4.7 --- danding_bot/plugins/danding_api/utils.py | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/danding_bot/plugins/danding_api/utils.py b/danding_bot/plugins/danding_api/utils.py index 171cecb..96a2d59 100644 --- a/danding_bot/plugins/danding_api/utils.py +++ b/danding_bot/plugins/danding_api/utils.py @@ -1,28 +1,18 @@ import os import asyncio import aiohttp -from nonebot import get_plugin_config +from nonebot import get_plugin_config, get_driver from .config import Config from nonebot import logger plugin_config = get_plugin_config(Config) -# get_plugin_config 不一定读取环境变量,手动兜底 +# NoneBot2 把 .env 读入 driver.config 而非 os.environ,手动兜底 +_driver_config = get_driver().config if not plugin_config.Token: - plugin_config.Token = ( - os.environ.get("DANDING_API_TOKEN") - or os.environ.get("danding_api_token") - or os.environ.get("TOKEN") - or os.environ.get("token") - or "" - ) - logger.debug(f"Token loaded from env: '{plugin_config.Token}'") - # 列出所有 DANDING 相关的环境变量 - for k, v in os.environ.items(): - if "DANDING" in k.upper() or "TOKEN" in k.upper(): - logger.debug(f"ENV: {k}={v}") + plugin_config.Token = getattr(_driver_config, "danding_api_token", "") or os.environ.get("DANDING_API_TOKEN", "") if not plugin_config.EMAIL_PASSWORD: - plugin_config.EMAIL_PASSWORD = os.environ.get("DANDING_EMAIL_PASSWORD", "") + plugin_config.EMAIL_PASSWORD = getattr(_driver_config, "danding_email_password", "") or os.environ.get("DANDING_EMAIL_PASSWORD", "") router:dict = { "在线人数":"bot_online_count", "添加卡密":"bot_add_kami",