javascript - Node.Js 的简单用户身份验证

标签 javascript node.js express neo4j passport.js

我一直在尝试使用 Passport/Express/Node.Js 组合来处理用户身份验证,但事实证明这太困难了。

所有教程都使用 MongoDB(我不想使用它,因为我想使用 Neo4J 数据库),而 Passport 的 Passport 本地示例并不适合我,因为我已经使用过来自 Node.Js in Action book - see on my github 的本地身份验证策略而且我不明白如何将其换成新的。

对于像我这样的初学者来说,我似乎找不到任何好的、易于使用的、逐步的介绍。它不一定是 Passport,但它必须是某种东西,使我能够通过本地策略以及 Facebook 和 Google 登录用户。

如果知道如何在不破坏我已有的东西的情况下实现它也很好,所以任何有关这方面的帮助将非常感激......

最佳答案

Passport 将是您最好/最简单的选择,因为很多其他人都在使用,并且正如您提到的,它有很多预先制定的策略。

Mongo的教程使用只是一个例子。您可以使用任何您想要的异步连接(mysql、neo4j、读取文件系统等),只要您构造一个代表您的用户的对象并调用给定的 done 函数即可你。

使用 Passport 的最大好处之一是您可以切换所涉及的策略,而不会干扰其他任何事情。如果您只是交换 LocalStrategy 后面的数据存储,那么您需要更改的只是 authorizedeserializeUser 函数,以便它们访问您的新数据库。如果 User 对象的结构发生变化,那么您还必须调整 serializeUser 函数以返回任何标识 token /值。

关于javascript - Node.Js 的简单用户身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22302612/

相关文章:

javascript - 我什么时候应该调用 $digest 而不是 $apply?

node.js - RoleMapping.USER 或 RoleMapping.ROLE & ACL

node.js - Pm2 问题 - 从 Ecosystem.config.js 启动进程时找不到 fs.readfilesync 文件

javascript - 如何在 SailsJS 中有选择地包含 javascript Assets ?

javascript - 非常基本的 React + NodeJS 获取 : Why is my response not what I want?

javascript - 为什么同样的答案?

javascript - 获取子内部 HTML

javascript - 将标题文本添加到 d3 中的路径中心

javascript - 未处理的拒绝错误: Can't set headers after they are sent using Node

node.js - NodeJS如何将文件从项目目录复制到执行目录?