feat: add launcher (web) url_config api to archive

This commit is contained in:
daydreamer-json
2026-04-15 00:23:49 +09:00
parent 3c95846d38
commit 01ba95b327
3 changed files with 40 additions and 0 deletions

View File

@@ -586,6 +586,7 @@ async function fetchAndSaveLatestWebApis(gameTargets: GameTarget[]) {
{ name: 'mainBgImage', method: apiUtils.akEndfield.launcherWeb.mainBgImage, dir: 'main_bg_image' },
{ name: 'banner', method: apiUtils.akEndfield.launcherWeb.banner, dir: 'banner' },
{ name: 'announcement', method: apiUtils.akEndfield.launcherWeb.announcement, dir: 'announcement' },
{ name: 'urlConfig', method: apiUtils.akEndfield.launcherWeb.urlConfig, dir: 'url_config' }
] as const;
for (const target of gameTargets) {

View File

@@ -131,6 +131,10 @@ type LauncherWebAnnouncement = {
}[];
};
type LauncherWebUrlConfig = {
payment_url: string;
};
type AccSrvUserAuthV1TokenByEmail = {
data: {
token: string;
@@ -565,6 +569,7 @@ export type {
LauncherWebMainBgImage,
LauncherWebBanner,
LauncherWebAnnouncement,
LauncherWebUrlConfig,
AccSrvUserAuthV1TokenByEmail,
AccSrvUserInfoV1Basic,
AccSrvUserInfoV1ThirdParty,

View File

@@ -174,4 +174,38 @@ export default {
.json();
return (rsp as any).proxy_rsps[0].get_announcement_rsp as TypesApiAkEndfield.LauncherWebAnnouncement;
},
urlConfig: async (
appCode: string,
channel: number,
subChannel: number,
language: (typeof defaultSettings.launcherWebLang)[number],
region: 'os' | 'cn',
platform: 'Windows' = 'Windows',
): Promise<TypesApiAkEndfield.LauncherWebUrlConfig> => {
const apiBase =
region === 'cn'
? appConfig.network.api.akEndfield.base.launcherCN
: appConfig.network.api.akEndfield.base.launcher;
const rsp = await ky
.post(`https://${apiBase}/proxy/web/batch_proxy`, {
...defaultSettings.ky,
json: {
proxy_reqs: [
{
kind: 'get_url_config',
get_url_config_req: {
appcode: appCode,
channel: String(channel),
sub_channel: String(subChannel),
language,
platform,
source: 'launcher',
},
},
],
},
})
.json();
return (rsp as any).proxy_rsps[0].get_url_config_rsp as TypesApiAkEndfield.LauncherWebUrlConfig;
},
};