This repository has been archived on 2024-12-31. You can view files and clone it, but cannot push or open issues or pull requests.

20 lines
754 B
JavaScript

const axios = require('axios');
const qs = require('qs');
const Session = require("../models/Session");
async function refreshToken(token) {
try {
const session = await Session.findOne({where: {token: token}});
const {data} = await axios.post(DISCORD_TOKEN_ENDPOINT, qs.stringify({
client_id: process.env.CLIENT_ID, client_secret: process.env.CLIENT_SECRET, grant_type: "refresh_token",
refresh_token: session.refresh_token
}));
await Session.update({access_token: data.access_token, refresh_token: data.refresh_token}, {where: {token: token}});
return data.access_token;
} catch (e) {
return "could not refresh token";
}
}
module.exports.refreshToken = refreshToken;