增加刷新token为空判断

This commit is contained in:
18610128193
2026-07-06 10:47:21 +08:00
parent 3c0647a6aa
commit 75d1f7a428
2 changed files with 15 additions and 4 deletions
+13 -1
View File
@@ -136,7 +136,13 @@ class DouyinRequest:
now_beijing = datetime.now(tz=BEIJING_TZ)
if force_refresh:
# 强制刷新:清空同条件下所有账号缓存与数据库token
# 强制刷新:先检查refresh_token是否为空
if not oauth_data.refresh_token:
# RefreshToken为空 → 授权已失效,清理Redis脏缓存
await self._delete_redis_token(oauth_id)
raise ValueError("授权已过期,请重新授权登录")
# 清空同条件下所有账号缓存与数据库token
where_cond = UserOAuth.deleted_at.is_(None)
if oauth_data.appid:
where_cond = where_cond & (UserOAuth.appid == oauth_data.appid)
@@ -191,6 +197,11 @@ class DouyinRequest:
return token
# =========【核心业务规则实现:判断RefreshToken是否过期】=========
if not oauth_data.refresh_token:
# RefreshToken为空 → 授权已失效,清理Redis脏缓存
await self._delete_redis_token(oauth_id)
raise ValueError("授权已过期,请重新授权登录")
if oauth_data.refresh_token_expired and oauth_data.refresh_token_expired < now_beijing:
# RefreshToken过期 → 授权彻底失效,清理Redis脏缓存
await self._delete_redis_token(oauth_id)
@@ -242,6 +253,7 @@ class DouyinRequest:
code = data.get('code', 0)
if code != 0:
#刷新token
raise ValueError(f"刷新access_token失败,接口返回:{data}")
data = data.get('data', {})