【发布时间】:2017-08-02 23:36:08
【问题描述】:
我正在学习使用 nodejsn、express、socket.io 和 mongodb 制作网站。我几乎是自学成才的,但在身份验证方面,我找不到简单说明其工作原理的教程。
我有一个登录表单,一个注册表单,用户数据在注册时存储到数据库中。当我登录时,页面会用我的用户名向我打招呼,但是当我刷新或关闭选项卡并返回时,我必须再次登录。
我想要的只是让用户无需系统登录即可返回。
我能找到的只是这样的解释:http://mherman.org/blog/2015/01/31/local-authentication-with-passport-and-express-4
而且我真的不明白。
有人能解释一下我在这里缺少什么吗?
【问题讨论】:
-
您需要显示一些代码,但我会假设您没有进行任何类型的会话管理,或者如果您是通过 http 提供服务但具有 secure:true 选项,这需要 https。
-
听起来像
cookies是您正在寻找的。使用加密模块创建一个强大的随机 cookie,即require('crypto').randomBytes并在req上检查该 cookie。如果用户拥有该 cookie,则将其视为“已登录”。 -
感谢您的回复。是的,我还没有做任何类型的会话管理。我很难找到一些解释它是如何工作的链接。 Jekrb 说的话听起来很棒。寻找 cookie 我发现:stackoverflow.com/questions/16209145/… 非常感谢!
标签: node.js mongodb authentication express socket.io