写在前面为了练习Express.js框架,写了一个问答网站。最近打算增加登录注册功能。于是又开了一个repo,先单独实现这个功能。思路分析如果你写了很多代码,你会发现无论写什么项目,“思路”比“手写代码”更重要。理想的情况是:花几个小时思考想法和细节,然后噼里啪啦几十分钟就完成了。注册的本质是将用户输入的(合法)账号密码保存到数据库中。登录的本质是检测用户输入的账号是否在数据库中,然后检查密码是否正确。当然,事实上,登录注册并没有这么简单。验证账号密码的合法性就不说了。另外:密码在存储到数据库之前必须进行加密(MD5)。使用Session(cookie)实现所谓的“记住密码”功能(下面Youdon'tneedtologinonceonceyouopenthewebsite)注册时,使用email(SMS)进行验证,也可以用于将来重置和其他服务。第三方登录(差点忘了)验证码代码写在:Github地址PS:最后说说如何学习MongoDB/mongoose。比起在项目实战中学习,我觉得还是按照文档一点一点的来做比较好!这里推荐两本Gitbooks(我看过):MongoDB入门指南mongooseGettingStarted