From a43543190cccac676a0c38dd0a015bccf7b3e6c9 Mon Sep 17 00:00:00 2001 From: mat Date: Wed, 2 Jun 2021 19:26:33 -0500 Subject: add api.ashcon.app as alternative to mojang api --- src/mojang.ts | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) (limited to 'src/mojang.ts') diff --git a/src/mojang.ts b/src/mojang.ts index 829de7f..331b3f3 100644 --- a/src/mojang.ts +++ b/src/mojang.ts @@ -70,8 +70,11 @@ export async function profileFromUsername(username: string): Promise { + let fetchResponse: nodeFetch.Response + + try { + fetchResponse = await fetch( + `https://api.ashcon.app/mojang/v2/user/${username}`, + { agent: () => httpsAgent } + ) + } catch { + // if there's an error, wait a second and try again + await new Promise((resolve) => setTimeout(resolve, 1000)) + return await profileFromUsernameAlternative(username) + } + + let data + try { + data = await fetchResponse.json() + } catch { + return { uuid: null, username: null } + } + return { + uuid: data.uuid, + username: data.username + } +} export async function profileFromUser(user: string): Promise { if (isUuid(user)) { -- cgit