关于基于令牌的身份验证的实现的困惑[Node js Express js]

时间:2015-09-12 07:29:14

标签: javascript angularjs node.js git

在对与nodejs和express js相关的认证方法的所有研究之后,我站在无人区。

到目前为止,我遇到的最简单的会话相关教程就是这个。

https://codeforgeek.com/2014/09/manage-session-using-node-js-express-4/

我使用的是平均堆栈,这就是我真正想做的事情。登录时的用户将获得将在客户端保存的身份验证令牌,然后在每个页面重新加载呼叫之前,将向服务器检查用户是否经过身份验证。

这是棘手的部分。

我正在使用服务器为计算机工作 - 这是基于角度的系统和手机,它基于android - 一个Android应用程序。

简而言之,这意味着用户可以同时使用他的计算机和手机(使用应用程序)登录。

如何实现这一点对我来说仍然是一个谜。请指导我一些教程或gits,它们将以最简单的方式解释这些事情。

请不要仅仅因为我在那里找不到任何有意义的东西而回复护照js,或者我可能会在错误的地方找到它。

我对这一切都是新手,这是有问题的。

感谢您的帮助。

3 个答案:

答案 0 :(得分:0)

实施基于令牌的身份验证的最可靠方法是使用oAuth2.0,其中还涉及使用passport JS

此处,使用此示例作为实现基于令牌的授权的参考点

http://scottksmith.com/blog/2014/07/02/beer-locker-building-a-restful-api-with-node-oauth2-server/

此示例代码具有功能齐全的OAuth2服务器,只需一点点工作即可完成。它使用OAuth2orize库使构建服务器非常直接。

答案 1 :(得分:0)

正如您所提到的,您正在使用Angular和NodeJS并希望实现基于令牌的身份验证。

我建议您使用Satellizer

此外,您可以在此处找到NodeJS实现: NodeJS Example

答案 2 :(得分:0)

我的答案是针对所有初学者。我在facebook的节点js组中读到类似的东西,我认为我面临的问题不是唯一的。

非常有名的护照js只是作为中间件使用,如果你必须包括google身份验证,facebook身份验证等选项,这是非常有用的,因为大部分工作已经完成,你的中间件工作由这个模块。

但是,如果像我一样,你正在寻找一些简单的东西,你想要的只是一个适当的数据库认证系统,那么这可能没有必要,这就是护照js模块。

如果要实现基于令牌的身份验证,您肯定还需要另外一个复杂的模块。最后,如果您自己处理中间的所有身份验证工作,为什么还要使用模块,这最终会增加复杂性。

我甚至接受了其他节点js开发人员的建议,他们已经花了很长时间研究这个问题,如果你准备好自己使用中间件并且你不需要,他们认为没有护照js是可以的。 fb等认证。

我希望这将有助于其他所有人都是新手。