This commit is contained in:
baiqwerdvd 2024-12-09 14:35:52 +08:00
parent bbaaede5f9
commit acb70b68fd
No known key found for this signature in database
GPG Key ID: 7717E46E1797411A
2 changed files with 20 additions and 9 deletions

View File

@ -1,4 +1,4 @@
ARK_WEB_USER = "https://zonai.skland.com/web/v1/user" ARK_API_USER = "https://zonai.skland.com/api/v1/user"
ARK_REFRESH_TOKEN = "https://zonai.skland.com/api/v1/auth/refresh" ARK_REFRESH_TOKEN = "https://zonai.skland.com/api/v1/auth/refresh"

View File

@ -19,7 +19,7 @@ from ...models.skland.models import (
ArknightsPlayerInfoModel, ArknightsPlayerInfoModel,
ArknightsUserMeModel, ArknightsUserMeModel,
) )
from .api import ARK_PLAYER_INFO, ARK_REFRESH_TOKEN, ARK_SKD_SIGN, ARK_WEB_USER from .api import ARK_API_USER, ARK_PLAYER_INFO, ARK_REFRESH_TOKEN, ARK_SKD_SIGN
proxy_url = core_plugins_config.get_config("proxy").data proxy_url = core_plugins_config.get_config("proxy").data
ssl_verify = core_plugins_config.get_config("MhySSLVerify").data ssl_verify = core_plugins_config.get_config("MhySSLVerify").data
@ -132,10 +132,10 @@ class BaseArkApi:
) )
if token is None: if token is None:
return -60 return -60
# is_vaild = await self.check_cred_valid(cred) is_vaild = await self.check_cred_valid(cred)
# if isinstance(is_vaild, bool): if isinstance(is_vaild, bool):
# await ArknightsUser.delete_user_data_by_uid(uid) await ArknightsUser.delete_user_data_by_uid(uid)
# return -61 return -61
headers = deepcopy(_HEADER) headers = deepcopy(_HEADER)
headers["cred"] = cred headers["cred"] = cred
# headers["dId"] = await get_d_id() # headers["dId"] = await get_d_id()
@ -245,12 +245,23 @@ class BaseArkApi:
attr="cred", attr="cred",
) )
) )
header = deepcopy(_HEADER) token = (
token
if token
else await ArknightsUser.get_user_attr_by_uid(
uid=uid,
attr="token",
)
)
if cred is None: if cred is None:
return False return False
if token is None:
return False
header = deepcopy(_HEADER)
header["cred"] = cred header["cred"] = cred
header = await self.set_sign(ARK_WEB_USER, header=header, token=token) header["dId"] = await get_d_id()
raw_data = await self.ark_request(ARK_WEB_USER, header=header) header = get_sign_header(token, ARK_API_USER, "get", None, header)
raw_data = await self.ark_request(ARK_API_USER, header=header)
if isinstance(raw_data, int) or not raw_data: if isinstance(raw_data, int) or not raw_data:
return False return False
if "code" in raw_data and raw_data["code"] == 10001: if "code" in raw_data and raw_data["code"] == 10001: