兼容864验证后终态缓存卡住的登录状态
This commit is contained in:
@@ -117,7 +117,20 @@ class LoginMixin(Server864APIClientBase):
|
||||
)
|
||||
if verification_url:
|
||||
normalized["verification_url"] = str(verification_url).strip()
|
||||
# 864 的扫码状态字段在不同版本里语义并不完全一致:
|
||||
# 1. 上层运行时需要知道原始 state,才能区分“等待扫码 / 安全验证 / 终态缓存未清理”等场景;
|
||||
# 2. 因此这里除了保留旧的 `state` 字段外,再显式放一份 `raw_state` 供 runtime 做分支;
|
||||
# 3. 同时把昵称、头像这些已扫描用户信息一并透出,便于 Dashboard 展示最新状态。
|
||||
state = int(normalized.get("state", 0) or 0)
|
||||
normalized["raw_state"] = state
|
||||
if self._pick_first(normalized, "nick_name", "nickName", "NickName"):
|
||||
normalized["nick_name"] = str(
|
||||
self._pick_first(normalized, "nick_name", "nickName", "NickName") or ""
|
||||
).strip()
|
||||
if self._pick_first(normalized, "head_img_url", "headImgUrl", "HeadImgUrl"):
|
||||
normalized["head_img_url"] = str(
|
||||
self._pick_first(normalized, "head_img_url", "headImgUrl", "HeadImgUrl") or ""
|
||||
).strip()
|
||||
login_state = str(normalized.get("loginState", "") or "").strip().lower()
|
||||
return state == 2 or login_state == "online", normalized
|
||||
|
||||
|
||||
Reference in New Issue
Block a user