как отправить токен JWT с клиента на сервер без реакции [закрыто]

Я понятия не имею, как обрабатывать токен JWT на стороне клиента.
Может ли кто-нибудь сказать мне, каким должен быть поток токена в запросах после его создания.
Я использую Nodejs, Express.js и HBS.
Я создал систему входа в систему, и теперь я не могу понять, как обрабатывать JWT на стороне клиента и отправлять его на сервер с другими запросами.

      function signin(req, res, next){
    const {authorization} = req.headers
    if(!authorization){
        return res.status(401).json({error:"You must be signed in"})
    }
    const token = authorization.replace("Bearer ","")
    jwt.verify(token,process.env.ACCESS_TOKEN_SECRET,(error,user)=>{
        if(error){
            return res.status(401).json({error: "You must be signed in"})
        }
        req.user = user;
        console.log(user);
        next();
    });
}


// Student Login
router.get('/student-login', (req,res)=>{
    res.render('login/studentLogin');
});
router.post('/student-login', async (req,res)=>{
    try{
        const student = await Student.findOne({email: req.body.email});
        // console.log(student)
        if(student.email == req.body.email){
            if( await bcrypt.compare(req.body.password, student.password)){
                const user = student.toJSON();
                const accessToken = jwt.sign(user, process.env.ACCESS_TOKEN_SECRET); 
                res.status(200).header('Authorization', `Bearer ${accessToken}`).render('profile') 
            }
            else{
                res.send("password and email dont match");
            }
        }
        else{
            res.send("email and password dont match")
        } 
    } catch (err){
        console.log(err);
    }

});

0 ответов

Другие вопросы по тегам