标签:密码 _id 验证 var 关于 log ODB body mongo
在用户登入时进行token的生成
// 登录
router.post(‘/login‘, function (req, res) {
User.find({ ‘username‘: req.body.username }, function (err, data) {
// 执行成功的时候
if (!err) {
// 判断有没有找到当前用户
if (data.length > 0) {
if (data[0].password == req.body.password) {
var token = jwt.sign({ _id: data[0]._id, username: data[0].username }, ‘xu l l‘, {
expiresIn: 60 * 60 * 24 //token过期时间 1h
})
res.send({
message: ‘登录成功‘,
"token": token,
id: data[0]._id,
userName: data[0].username
})
} else {
res.send({
message: ‘密码错误‘,
success: false
})
}
}
else {
res.send({
message: ‘用户名错误‘,
success: false
})
}
}
})
});
访问其它接口需要携带token
// 修改用户名
router.post(‘/editUsername‘, authMiddle, function (req, res, next) {
User.updateOne({ _id: req.body.uId }, { $set: { username: req.body.message } }, function (err, data) {
res.send({
success: true
})
})
})
关于toekn的验证函数
// 权限判断的中间件
var authMiddle = function (req, res, next) {
var result = auth(req)
if (!result) {
res.send({
success: false,
msg: "token错误"
})
}
try {
var decoded = jwt.verify(result.name, ‘xu l l‘)
next()
} catch (error) {
res.send({
success: false,
msg: error
})
}
}
标签:密码 _id 验证 var 关于 log ODB body mongo
原文地址:https://www.cnblogs.com/xll1/p/12820243.html