From 30ad0151e2a7f4eaa4d43bf7bf3432965b4ac0ad Mon Sep 17 00:00:00 2001 From: luoshuijs Date: Thu, 23 Nov 2023 00:51:46 +0800 Subject: [PATCH] :art: Add handling for `InvalidDevice` exception to `PublicCookiesService` --- core/services/cookies/services.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/services/cookies/services.py b/core/services/cookies/services.py index 91192484..2bed5b7d 100644 --- a/core/services/cookies/services.py +++ b/core/services/cookies/services.py @@ -11,7 +11,7 @@ from gram_core.services.cookies.services import ( ) from simnet import GenshinClient, Region, Game -from simnet.errors import InvalidCookies, TooManyRequests, BadRequest as SimnetBadRequest, NeedChallenge +from simnet.errors import InvalidCookies, TooManyRequests, BadRequest as SimnetBadRequest, NeedChallenge, InvalidDevice from utils.log import logger @@ -79,6 +79,11 @@ class PublicCookiesService(BaseService, BasePublicCookiesService): await self.set_device_valid(client.account_id, False) await self._cache.delete_public_cookies(cookies.user_id, region) raise NeedContinue + except InvalidDevice: + logger.warning("用户 [%s] 设备信息无效", public_id) + await self.set_device_valid(client.account_id, False) + await self._cache.delete_public_cookies(cookies.user_id, region) + raise NeedContinue except SimnetBadRequest as exc: if "invalid content type" in exc.message: raise exc