app.post('/login',(req,res)=>{if(req.body.name&&req.body.password){letname=req.body.nameletpassword=req.body.password//通常应该访问数据库
letuser=users[_.findIndex(users,{name})]if(!user){res.status(401).json({message:'no such user found'})}if(user.password===password){letpayload={id:user.id}lettoken=jwt.sign(payload,jwtOptions.secretOrKey)res.json({message:'ok',token})}else{res.status(401).json({message:'password not correct'})}}else{res.status(401).json({message:'name and password must be vaid'})}}
下面我们要准备保护我们的路由
1
2
3
app.get('/secret',passport.authenticate('jwt',{session:false}),(req,res)=>{res.json('Success! You can not see this without a token')})