Редирект, используя jwt

я решил использовать jwt в своем проекте в качестве обучения. Я уже сделал авторизацию с помощью jwt:

async  function Login() {
  const response = await fetch('auth/login', {
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
    method: "POST",
    body: JSON.stringify({username: document.getElementById("login").value, password: document.getElementById("pass").value})
  });

  let result = await response.json()

  if (!result['success']) {
    alert(result['message'])
  }
  else {
    localStorage.setItem('token', result['token']);
  }

  document.getElementById("login").value = ''; document.getElementById("pass").value = ''; 
}

Дальше я хочу перейти на страницу /home (личный кабинет), я уже сделал код бэкенда middleware, который проверит, авторизован ли пользователь:

const jwt = require('jsonwebtoken')
const {secret} = require('../config')

module.exports = function (req, res, next) {
    if (req.method === "OPTIONS") {
        next()
    }

    try {
        const token = req.headers.authorization.split(' ')[1]
        if (!token) {
            return res.status(403).json({message: "Пользователь не авторизован"})
        }
        const decodeData = jwt.verify(token, secret)
        req.user = decodeData
        next()
    } catch (e) {
        console.log(e)
        return res.status(403).json({message: "Пользователь не авторизован"})
    }
}

А как теперь организовать редирект на фронтенте, чтобы после авторизации в следующем запросе отправлялся токен и загружалась новая страница по адресу localhost:3000/home

Большое спасибо!


Ответы (0 шт):