const jwt = require('../../Biblioteca/node_modules/jsonwebtoken'); // Importa a biblioteca JSON Web Token const { jwtSecret, refreshTokenSecret } = require('../config/configuracao'); // Importa variáveis de configuração const refreshTokens = []; // Array para armazenar tokens de atualização // Controlador para renovar tokens JWT const tokenController = (req, res) => { const { token } = req.body; // Obtém o token de atualização do corpo da requisição if (!token) return res.sendStatus(401); // Se não houver token, retorna erro 401 if (!refreshTokens.includes(token)) return res.sendStatus(403); // Se o token não estiver na lista, retorna erro 403 jwt.verify(token, refreshTokenSecret, (err, user) => { if (err) return res.sendStatus(403); // Se o token for inválido, retorna erro 403 const accessToken = jwt.sign({ domain: user.domain }, jwtSecret, { expiresIn: '1h' }); // Gera um novo token de acesso res.json({ accessToken }); // Retorna o novo token de acesso }); }; module.exports = tokenController; // Exporta o controlador de token para ser