pages/js/main.js
2023-08-24 16:50:28 +02:00

45 lines
1.1 KiB
JavaScript

const $ = _ => document.querySelector(_);
const DiscordApi = {
getUser: async () => {
if (typeof localStorage.getItem('token') !== "string")
return null;
const req = await fetch('https://discord.com/api/v10/users/@me', {
headers: {
'Authorization': `Bearer ${localStorage.getItem('token')}`
}
});
const res = await req.json();
DiscordApi.refreshToken();
return res;
},
refreshToken: () => {
if (typeof localStorage.getItem('refresh') !== "string")
return null;
fetch('https://crss-api.theclashfruit.workers.dev/refresh', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ authCode: localStorage.getItem('refresh') })
})
.then(res => res.json())
.then(res => {
localStorage.setItem('token', res.access_token)
localStorage.setItem('refresh', res.refresh_token)
})
}
}
const displayUser = async () => {
const user = await DiscordApi.getUser()
$('.userButton').innerText = user.global_name
}
displayUser();