【发布时间】:2021-04-07 05:49:17
【问题描述】:
我正在尝试使用 Express JS 创建 API,该 API 工作正常,我使用 JsonWebToken 包对某些路由进行了授权,创建令牌很好,但是当我使用它时,我给出了这个错误:TypeError: Assignment到常量变量。 用户控制器登录:
login:(req,res)=>{
const body=req.body;
checkUserByEmail(body.email,(err,results)=>{
if(err){
return err;
}
else if(!results){
return res.json({
success:0,
message : 'email not registered!'
});
}
else{
const result = bcrypt.compareSync(body.password,results.password);
if(result){
const jsonToken = sign({
email:body.email,
name:results.name
},process.env.TOKEN_KEY,
{expiresIn : 60*60*24*30*12});
return res.json({
success:1,
message:'loggin successfully',
token :jsonToken
})
}
else{
res.json({
success:0,
message:'password is wrong'
})
}
}
})
},
我的认证方法:
module.exports = {
checkToken :(req,res,next)=>{
const token = req.get('authorization');
if(token){
console.log(token);
token=token.slice(7);
verify(token,process.env.TOKEN_KEY,(err,decoded)=>{
if(err){
return res.json({
success:0,
messgae:'invalid token'
});
}else{
next();
}
})
}
else {
return res.json({
success:0,
messgae:'access not allowed'
});
}
}
}
谁能帮忙?
【问题讨论】:
标签: express authentication jwt token