token refreshed notification
This commit is contained in:
parent
17763841f2
commit
8c4ed42f4f
12
app.js
12
app.js
|
@ -11,7 +11,7 @@ app.set('view engine', 'ejs')
|
|||
app.get('/', async (req, res) => {
|
||||
if (req.headers.cookie == undefined) {
|
||||
console.log('No Cookies Found')
|
||||
res.render('index.html', { signedIn: false, json: {} })
|
||||
res.render('index.html', { signedIn: false, tokenRefreshed: 'false', json: {} })
|
||||
}
|
||||
if (req.headers.cookie !== undefined) {
|
||||
console.log('Cookies Found')
|
||||
|
@ -31,7 +31,13 @@ app.get('/', async (req, res) => {
|
|||
var bearer_token = req.headers.cookie.split('bearer_token=')[1].split(';')[0]
|
||||
var data = await fetch(`https://discord.com/api/users/@me`, {headers: { Authorization: `Bearer ${bearer_token}` } }) // Fetching user data
|
||||
var json = await data.json()
|
||||
res.render('index.html', { res, json })
|
||||
if (req.query.tokenrefreshed == 'true') {
|
||||
console.log('Token Refreshed')
|
||||
res.render('index.html', { signedIn: true, tokenRefreshed: true, json })
|
||||
}
|
||||
else {
|
||||
res.render('index.html', { signedIn: true, tokenRefreshed: false, json })
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@ -84,7 +90,7 @@ app.get('/login/refresh', async (req, res) => {
|
|||
res.cookie("bearer_token", json.access_token, { maxAge: json.expires_in * 1000 })
|
||||
res.cookie("refresh_token", json.refresh_token)
|
||||
console.log('New Bearer and Refresh tokens set')
|
||||
res.redirect('/') // Redirecting to main page
|
||||
res.redirect('/?tokenrefreshed=true') // Redirecting to main page
|
||||
})
|
||||
|
||||
app.get('/logout', (req, res) => {
|
||||
|
|
|
@ -1,21 +1,39 @@
|
|||
<button onclick="window.location.replace(`/login/refresh`)">Refresh Token</button>
|
||||
<button onclick="window.location.replace(`/login`">Login</button>
|
||||
<button onclick="window.location.replace(`/logout`)">Logout</button>
|
||||
<div id="refreshedTokenNotification">
|
||||
<h1>Your token was successfully refreshed!</h1>
|
||||
</div>
|
||||
<div id="signedIn">
|
||||
<h1>Hello, <%= json.username %> #<%= json.discriminator %></h1>
|
||||
<img src="https://cdn.discordapp.com/avatars/<%= json.id %>/<%= json.avatar %>?size=512">
|
||||
</div>
|
||||
<div id="signedOut">
|
||||
<h1>You are not signed in, please click the Login button above</h1>
|
||||
<h1>You are not signed in, please click the Login button below</h1>
|
||||
</div>
|
||||
<div id="refreshTokenButton">
|
||||
<button onclick= "window.location.replace(`/login/refresh`)" >Refresh Token</button>
|
||||
</div>
|
||||
<div id="loginButton">
|
||||
<button onclick= "window.location.replace(`/login`)" >Login</button>
|
||||
</div>
|
||||
<div id="logoutButton">
|
||||
<button onclick= "window.location.replace(`/logout`)" >Logout</button>
|
||||
</div>
|
||||
<script>
|
||||
var signedIn = <%= JSON.stringify(signedIn) %>;
|
||||
console.log(signedIn);
|
||||
if (signedIn === false) {
|
||||
document.getElementById("signedIn").hidden = true;
|
||||
document.getElementById("signedOut").hidden = false;
|
||||
} else {
|
||||
document.getElementById("signedIn").hidden = false;
|
||||
document.getElementById("signedOut").hidden = true;
|
||||
var signedIn = <%= signedIn %>
|
||||
var tokenRefreshed = <%= tokenRefreshed %>
|
||||
if (signedIn == false) {
|
||||
document.getElementById("signedIn").hidden = true
|
||||
document.getElementById("signedOut").hidden = false
|
||||
document.getElementById("logoutButton").hidden = true
|
||||
document.getElementById("refreshTokenButton").hidden = true
|
||||
document.getElementById("refreshedTokenNotification").hidden = true
|
||||
}
|
||||
if (tokenRefreshed == true) {
|
||||
document.getElementById("refreshedTokenNotification").hidden = false
|
||||
document.getElementById("signedOut").hidden = true
|
||||
}
|
||||
if (signedIn == true) {
|
||||
document.getElementById("loginButton").hidden = true
|
||||
document.getElementById("signedOut").hidden = true
|
||||
document.getElementById("refreshedTokenNotification").hidden = true
|
||||
}
|
||||
</script>
|
Loading…
Reference in New Issue