增加刷新token为空判断
This commit is contained in:
@@ -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', {})
|
||||
|
||||
Reference in New Issue
Block a user