pages/js/main.js

45 lines
1.1 KiB
JavaScript
Raw Permalink Normal View History

2023-08-24 14:48:26 +00:00
const $ = _ => document.querySelector(_);
2023-08-24 14:38:04 +00:00
const DiscordApi = {
getUser: async () => {
2023-08-24 14:40:40 +00:00
if (typeof localStorage.getItem('token') !== "string")
2023-08-24 14:38:04 +00:00
return null;
const req = await fetch('https://discord.com/api/v10/users/@me', {
headers: {
'Authorization': `Bearer ${localStorage.getItem('token')}`
}
});
2023-08-24 14:42:17 +00:00
const res = await req.json();
2023-08-24 14:38:04 +00:00
DiscordApi.refreshToken();
2023-08-24 14:42:17 +00:00
return res;
2023-08-24 14:38:04 +00:00
},
refreshToken: () => {
2023-08-24 14:40:40 +00:00
if (typeof localStorage.getItem('refresh') !== "string")
2023-08-24 14:38:04 +00:00
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)
})
}
2023-08-24 14:48:26 +00:00
}
const displayUser = async () => {
const user = await DiscordApi.getUser()
$('.userButton').innerText = user.global_name
2023-08-24 14:48:26 +00:00
}
displayUser();