🌱 完成获取实时便笺请求

This commit is contained in:
BTMuli
2023-07-26 14:13:14 +08:00
parent f0abb2ce55
commit 09c1bd81fa
3 changed files with 46 additions and 3 deletions

View File

@@ -2,7 +2,7 @@
* @file web api TGApi.ts
* @description 应用用到的 API
* @author BTMuli <bt-muli@outlook.com>
* @since Alpha v0.2.1
* @since Alpha v0.2.2
*/
import { BBSUserInfoApi } from "./BBS";
@@ -13,6 +13,7 @@ import {
TakumiTokensApi,
TakumiRecordCardApi,
TakumiRecordCharactersApi,
TakumiRecordDailyNotesApi,
TakumiRecordIndexApi,
TakumiRecordAbyssApi,
TakumiSTokenBindingRolesApi,
@@ -48,6 +49,7 @@ const TGApi = {
},
getUserCard: TakumiRecordCardApi, // 获取用户卡片
getUserBase: TakumiRecordIndexApi, // 获取用户基本信息
getDailyNotes: TakumiRecordDailyNotesApi, // 获取实时便笺
getAbyss: TakumiRecordAbyssApi, // 获取深境螺旋信息
},
};

View File

@@ -1,8 +1,8 @@
/**
* @file web api Takumi.ts
* @description 定义 Takumi API
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
* @author BTMuli <bt-muli@outlook.com>
* @since Alpha v0.2.2
*/
const TakumiApi = "https://api-takumi.mihoyo.com/"; // 基础 API
@@ -13,6 +13,7 @@ const TakumiRecordApi = "https://api-takumi-record.mihoyo.com/"; // 游戏记录
const TakumiRecordGenshinApi = `${TakumiRecordApi}game_record/app/genshin/api/`; // 原神游戏记录 API
export const TakumiTokensApi = `${TakumiAuthApi}getMultiTokenByLoginTicket`; // 登录票据 API
export const TakumiRecordDailyNotesApi = `${TakumiRecordApi}game_record/app/genshin/api/dailyNote`; // 游戏记录便笺 API
export const TakumiRecordCardApi = `${TakumiRecordApi}game_record/app/card/wapi/getGameRecordCard`; // 游戏记录卡片 API
export const TakumiRecordIndexApi = `${TakumiRecordGenshinApi}index`; // 原神游戏记录索引 API
export const TakumiRecordCharactersApi = `${TakumiRecordGenshinApi}character`; // 原神游戏记录角色 API

View File

@@ -0,0 +1,40 @@
/**
* @file web request getDailyNotes.ts
* @description 获取实时便笺
* @author BTMuli <bt-muli@outlook.com>
* @since Alpha v0.2.2
*/
// tauri
import { http } from "@tauri-apps/api";
// api
import TGApi from "../api/TGApi";
// utils
import { getRequestHeader } from "../utils/getRequestHeader";
/**
* @description 获取实时便笺
* @since Alpha v0.2.2
* @param {Record<string, string>} cookie cookie
* @param {TGApp.Sqlite.Account.Game} account 游戏账号
* @returns {Promise<TGApp.Game.DailyNotes.FullInfo|TGApp.App.Base.Response>}
*/
export async function getDailyNotes(
cookie: Record<string, string>,
account: TGApp.Sqlite.Account.Game,
): Promise<TGApp.Game.DailyNotes.FullInfo | TGApp.BBS.Response.Base> {
const url = TGApi.GameData.getDailyNotes;
const role_id = account.gameUid;
const params = { role_id, server: account.region };
const header = getRequestHeader(cookie, "GET", params, "common");
return await http
.fetch<TGApp.Game.DailyNotes.Response>(url, {
method: "GET",
headers: header,
query: params,
})
.then((res) => {
if (res.data.retcode !== 0) return res.data;
return res.data.data;
});
}