Nodejs用户配置文件和会话

时间:2017-05-01 19:43:48

标签: node.js express passport.js

目标是为我的Web应用程序构建用户配置文件系统。用户可以登录,维护会话并查看他的个人资料。在网上阅读了有关如何做到这一点的各种教程后,我感到有些迷茫。每个人都使用不同的库,并且作为Web开发的新手,每个库的功能并不清楚。我已经看过使用了以下库,有人可以解释用户配置文件交互的流程以及每个库的位置吗?

string name = "stranger";

while (true)
{
    Console.Write("Input some text: ");
    Console.WriteLine(TryGetName(Console.ReadLine(), name, out name)
        ? $"I detected your name is: '{name}'"
        : $"I did not detect your name that time, {name}.");
    Console.WriteLine();
}

1 个答案:

答案 0 :(得分:2)

开始学习的一种方法可以是: https://www.youtube.com/watch?v=Z1ktxiqyiLA 在那里,我学会了如何使用你问题中的大部分插件。

关于插件的确如此:

  • passport passport是一个node.js插件,通常与express一起使用,作为负责authorizationauthentication

  • passport-local - 是passport的插件,更技术上是一种身份验证策略,通常与数据库或配置文件一起使用。

  • bcrypt-nodejs通常用于加密数据库中的密码(但它比那更强大),用纯文本保存密码并不酷。

  • connect-flash - 用于显示在“用户已成功添加”,“无效的用户凭据”或您要在其上显示的任何其他成功或错误消息的页面上显示的Flash消息页。

  • express-session - 是一个express中间件,负责存储用户会话。

  • jsonwebtoken - jwt用于创建一个令牌,您将用它来识别用户是否经过身份验证。

  • express-jwt - express的{​​{1}}中间件

  • jsonwebtoken - 用于解析Cookie的cookie-parser中间件

  • express - 只是一项登录服务。

好的,你应该在这里理解一点理论:

    带有morgan策略的
  • passport是一种有状态的身份验证机制,如果用户在会话中进行了身份验证,则应该保存,如果你重新启动了node.js服务器不要将您的会话作为数据库/文件等保存在第三方服务中......您将失去会话。

  • passport-local是一种无状态身份验证机制,您无需在服务器上只保存“密钥”。无状态体系结构有一些很酷的优点,因为它可以提升水平可伸缩性,您可以拥有无​​限节点,这些节点将知道如何解析已发送的令牌并了解用户是否已登录。最近我和jwt一起进行身份验证。