From 51d8ee5d6e68f635290551b4666f18212b2d1591 Mon Sep 17 00:00:00 2001 From: Xhichn Date: Tue, 14 Mar 2023 16:29:51 +0800 Subject: [PATCH] Add some auth endpoints --- .../Snap.Hutao/Web/ApiOsEndpoints.cs | 67 +++++++++++++++++-- 1 file changed, 61 insertions(+), 6 deletions(-) diff --git a/src/Snap.Hutao/Snap.Hutao/Web/ApiOsEndpoints.cs b/src/Snap.Hutao/Snap.Hutao/Web/ApiOsEndpoints.cs index 1de4678f..865a0941 100644 --- a/src/Snap.Hutao/Snap.Hutao/Web/ApiOsEndpoints.cs +++ b/src/Snap.Hutao/Snap.Hutao/Web/ApiOsEndpoints.cs @@ -17,6 +17,58 @@ namespace Snap.Hutao.Web; [SuppressMessage("", "SA1124")] internal static class ApiOsEndpoints { + #region ApiGeetest + + /// + /// 获取GT码 + /// + /// gt + /// GT码Url + public static string GeetestGetType(string gt) + { + return $"{ApiNaGeetest}/gettype.php?gt={gt}"; + } + + /// + /// 验证接口 + /// + /// gt + /// challenge流水号 + /// 验证接口Url + public static string GeetestAjax(string gt, string challenge) + { + return $"{ApiNaGeetest}/ajax.php?gt={gt}&challenge={challenge}&lang=zh-cn&pt=0&client_type=web"; + } + + #endregion + + #region ApiOsTakumiAuthApi + + /// + /// 获取 stoken 与 ltoken + /// + /// 登录票证 + /// uid + /// Url + public static string AuthMultiToken(string loginTicket, string loginUid) + { + return $"{ApiOsTakumiAuthApi}/getMultiTokenByLoginTicket?login_ticket={loginTicket}&uid={loginUid}&token_types=3"; + } + + /// + /// 获取 stoken 与 ltoken + /// + /// 操作类型 game_role + /// Stoken + /// uid + /// Url + public static string AuthActionTicket(string actionType, string stoken, string uid) + { + return $"{ApiAcountOsAuthApi}/getActionTicketBySToken?action_type={actionType}&stoken={Uri.EscapeDataString(stoken)}&uid={uid}"; + } + + #endregion + #region ApiOsTaKumiApi /// @@ -39,7 +91,10 @@ internal static class ApiOsEndpoints #region SgPublicApi - public const string CalculateFurnitureCompute = $"{SgPublicApi}/event/calculateos/furniture/list"; + /// + /// 计算器家具计算 + /// + public const string CalculateOsFurnitureCompute = $"{SgPublicApi}/event/calculateos/furniture/list"; /// /// 计算器角色列表 size 20 @@ -164,11 +219,6 @@ internal static class ApiOsEndpoints /// fetch CookieToken /// public const string AccountGetCookieTokenBySToken = $"{ApiAcountOsAuthApi}/getCookieAccountInfoBySToken"; - - /// - /// ActionTicket - /// - public const string AccountGetActionTicketBySToken = $"{ApiAcountOsAuthApi}/getActionTicketBySToken"; #endregion #region SdkStaticLauncherApi @@ -185,9 +235,14 @@ internal static class ApiOsEndpoints #endregion #region Hosts | Queries + private const string ApiNaGeetest = "https://api-na.geetest.com"; + private const string ApiOsTaKumi = "https://api-os-takumi.hoyoverse.com"; private const string ApiOsTaKumiBindingApi = $"{ApiOsTaKumi}/binding/api"; + // 和上面的域名不同 + private const string ApiOsTakumiAuthApi = "https://api-os-takumi.mihoyo.com/auth/api/getMultiTokenByLoginTicket"; + private const string ApiAccountOs = "https://api-account-os.hoyolab.com"; private const string ApiAccountOsBindingApi = $"{ApiAccountOs}/binding/api"; private const string ApiAcountOsAuthApi = $"{ApiAccountOs}/account/auth/api";