介绍
这篇文章给大家分享的是有关nodejs如何实现用户登录路由功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
<强>一、users_model.js 功能:定义用户对象模型强>
var 猫鼬=要求(& # 39;猫鼬# 39;), ,,模式=mongoose.Schema; var UserSchema=new 模式({ ,,用户名:{类型:字符串、独特:真}, ,,电子邮件:字符串, ,,颜色:字符串, ,,hashed_password:字符串 }); mongoose.model(& # 39;用户# 39;,UserSchema);
<强>二,users_controller.js 功能:为表达服务器实现用户登录路由强>
var 加密=要求(& # 39;密码# 39;); var 猫鼬=要求(& # 39;猫鼬# 39;),用户=mongoose.model(& # 39;用户# 39;); function hashPW (pwd) { return 才能;crypto.createHash (& # 39; sha256& # 39;) .update (pwd)。 消化才能(& # 39;base64 # 39;) .toString (); }//实现用户登录路由 exports.login=function (点播,res) { User.findOne才能({用户名:req.body.username}) .exec才能(函数(呃,用户){ ,,,如果(用户){ ,,,,,呃=& # 39;User Not 发现# 39;; ,,,}else 如果(user.hashed_password===hashPW (req.body.password.toString ())) { ,,,,,req.session.regenerate(函数(){ ,,,,,,,req.session.user=user.id; ,,,,,,,req.session.username=user.username; ,,,,,,,req.session.msg=& # 39; Authenticated as & # 39;, + user.username; ,,,,,,,res.redirect (& # 39;/& # 39;); ,,,,,}); 还有,,,}{ ,,,,,呃=& # 39;Authentication 失败只& # 39;; ,,,} ,,,如果(err) { ,,,,,req.session.regenerate(函数(){ ,,,,,,,req.session.msg=犯错; ,,,,,,,res.redirect(& # 39;/登录# 39;); ,,,,,}); ,,,} ,,}); };
<强>三,登录。html 强>
& lt; ! DOCTYPE html> & lt; html> & lt; head> & lt; meta charset=癠TF-8"祝辞 & lt; title>用户登录& lt;/title> & lt; link  rel=皊tylesheet"类型=拔谋?css" https://www.yisu.com/zixun/, href="/静态/css/styles”css rel="外部nofollow "/> 头 身体<>注册> <人力资源> 身体>登录
<形式方法=" POST "> <标记>用户名:>标签
<标记>密码:> 标签
形式