♻️ 变更目录,参考 TGAssistant 优化一些方法

This commit is contained in:
BTMuli
2023-05-19 09:30:29 +08:00
parent 07056bfec7
commit 824ef681e2
27 changed files with 253 additions and 239 deletions

8
src/web/api/ENKA.ts Normal file
View File

@@ -0,0 +1,8 @@
/**
* @file web api ENKA.ts
* @description ENKA API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
*/
export const ENKA_API = "https://enka.network/api/uid/"; // 基础 API

13
src/web/api/Hk4e.ts Normal file
View File

@@ -0,0 +1,13 @@
/**
* @file web api Hk4e.ts
* @description 定义 Hk4e API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
*/
const Hk4eApi = "https://hk4e-api.mihoyo.com"; // 基础 API
const Hk4eAnnoApi = `${Hk4eApi}/common/hk4e_cn/announcement/api`; // 公告 API
export const Hk4eAnnoListApi = `${Hk4eAnnoApi}/getAnnList?`; // 公告列表 API
export const Hk4eAnnoContentApi = `${Hk4eAnnoApi}/getAnnContent?`; // 公告内容 API
export const Hk4eAnnoQuery =
"game=hk4e&game_biz=hk4e_cn&lang=zh-cn&bundle_id=hk4e_cn&platform=pc&region=cn_gf01&level=60&uid=500299765"; // 公告 Query

14
src/web/api/Passport.ts Normal file
View File

@@ -0,0 +1,14 @@
/**
* @file web api Passport.ts
* @description 定义 Passport API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
*/
const PassportApi = "https://passport-api.mihoyo.com/"; // 基础 API
const PassportV4Api = "https://passport-api-v4.mihoyo.com/"; // 基础 API
const PassportAuthApi = `${PassportApi}account/auth/api/`; // 认证 API
export const PassportTokenApi = `${PassportAuthApi}getLTokenBySToken`; // 根据 stoken 获取 ltoken
export const PassportCookieTokenApi = `${PassportAuthApi}getCookieAccountInfoBySToken`; // 根据 Cookie 获取 Token
export const PassportVerifyApi = `${PassportV4Api}account/ma-cn-session/web/verifyLtoken`; // 验证 stoken 有效性

44
src/web/api/TGApi.ts Normal file
View File

@@ -0,0 +1,44 @@
/**
* @file web api TGApi.ts
* @description 应用用到的 API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
*/
import { ENKA_API } from "./ENKA";
import { Hk4eAnnoListApi, Hk4eAnnoContentApi, Hk4eAnnoQuery } from "./Hk4e";
import { PassportTokenApi, PassportCookieTokenApi, PassportVerifyApi } from "./Passport";
import {
TakumiTokensApi, TakumiRecordCardApi,
TakumiRecordGenshinCharacterApi, TakumiRecordGenshinIndexApi,
TakumiRecordGenshinSpiralAbyssApi, TakumiSTokenBindingRolesApi,
TakumiCookieBindingRolesApi,
} from "./Takumi";
// 应用 API
const TGApi = {
GameAnnoList: Hk4eAnnoListApi, // 游戏公告 API
GameAnnoContent: Hk4eAnnoContentApi, // 游戏公告内容 API
GameAnnoQuery: Hk4eAnnoQuery, // 游戏公告 Query
GameEnka: ENKA_API, // 游戏 ENKA API
GameTokens: {
getTokens: TakumiTokensApi, // 根据 login_ticket 获取游戏 Token
getLToken: PassportTokenApi, // 根据 stoken 获取 ltoken
getCookieToken: PassportCookieTokenApi, // 根据 Cookie 获取 Token
verifyStoken: PassportVerifyApi, // 验证 stoken 有效性
},
GameData: {
byCookie: {
getAccounts: TakumiCookieBindingRolesApi, // 获取绑定角色
getCharacter: TakumiRecordGenshinCharacterApi, // 获取角色信息
},
bySToken: {
getAccounts: TakumiSTokenBindingRolesApi, // 获取绑定角色
},
getUserCard: TakumiRecordCardApi, // 获取用户卡片
getUserBase: TakumiRecordGenshinIndexApi, // 获取用户基本信息
getAbyss: TakumiRecordGenshinSpiralAbyssApi, // 获取深境螺旋信息
},
};
export default TGApi;

21
src/web/api/Takumi.ts Normal file
View File

@@ -0,0 +1,21 @@
/**
* @file web api Takumi.ts
* @description 定义 Takumi API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
*/
const TakumiApi = "https://api-takumi.mihoyo.com/"; // 基础 API
const TakumiRecordApi = "https://api-takumi-record.mihoyo.com/"; // 游戏记录 API
const TakumiBindingApi = `${TakumiApi}binding/api/`; // 绑定 API
const TakumiRecordGenshinApi = `${TakumiRecordApi}game_record/app/genshin/api/`; // 原神游戏记录 API
const TakumiAuthApi = `${TakumiApi}auth/api/`; // 认证 API
export const TakumiTokensApi = `${TakumiAuthApi}getMultiTokenByLoginTicket`; // 登录票据 API
export const TakumiActionTicketsApi = `${TakumiAuthApi}getActionTicketByStoken`; // 行为票据 API
export const TakumiRecordCardApi = `${TakumiRecordApi}game_record/app/card/wapi/getGameRecordCard`; // 游戏记录卡片 API
export const TakumiRecordGenshinIndexApi = `${TakumiRecordGenshinApi}index`; // 原神游戏记录索引 API
export const TakumiRecordGenshinCharacterApi = `${TakumiRecordGenshinApi}character`; // 原神游戏记录角色 API
export const TakumiRecordGenshinSpiralAbyssApi = `${TakumiRecordGenshinApi}spiralAbyss`; // 原神游戏记录深境螺旋 API
export const TakumiSTokenBindingRolesApi = `${TakumiBindingApi}getUserGameRolesBySToken`; // 获取绑定角色 API-根据 stoken
export const TakumiCookieBindingRolesApi = `${TakumiBindingApi}getUserGameRolesByCookie`; // 获取绑定角色 API-根据 Cookie