相关疑难解决方法(0)

会话如何在Express.js中与Node.js一起工作?

使用Express.js,会话很简单.我很好奇他们实际上是如何工作的.

它是否在客户端存储了一些cookie?如果是这样,我在哪里可以找到该cookie?如果需要,我该如何解码?

我基本上希望能够看到用户是否已登录,即使当时用户实际上并不在该网站上(例如,当您在其他网站上时,facebook知道您已登录).但我想要明白,我应该先了解会议是如何运作的.

javascript cookies session node.js express

95
推荐指数
3
解决办法
5万
查看次数

MEAN堆栈上登录系统的体系结构?

我正在MEAN堆栈上开发一个Web应用程序(MongoDB,Express,AngularJS和node.js).我正在开发一个登录系统,并且还会保护一些Angular路由,以便只有登录用户才能访问它们.我正在尝试考虑采用这种架构的最佳方法.

我正在考虑当前的工作流程:

  • 用户通过AngularJS表单登录,该表单将http POST发送到Express端点.端点根据数据库验证用户,并使用OAuth令牌和cookie进行响应.两者都存储在mongo数据库中以供以后验证.
  • 一旦AngularJS收到登录响应,它就会使用ng-cookies存储收到的cookie,并将OAuth令牌存储在用户服务中.
  • 现在每次路径在AngularJS中发生变化时,用户服务用于通过将cookie与mongo数据库中的cookie进行比较来确保cookie仍然是合法的(这将是使用Angular的解析的API调用...这会创建一个明显的落后?)
  • 当用户单击"注销"或cookie过期时,cookie和OAuth令牌都将从数据库中删除,并且将不再有效.

这种方法有意义吗?它是否安全,是否相对有效/快速执行?

javascript mongodb node.js express angularjs

14
推荐指数
1
解决办法
5775
查看次数

Express.js + Passport.js:如何限制同一用户的多次登录?

默认情况下,Passport允许同一用户从多个浏览器登录并创建唯一会话.如何在用户尝试创建第二个会话时将其配置为销毁第一个会话?

目前我正在使用"会话"模型将用户名添加到记录中,并在后续登录时按用户名检查会话是否存在.但这会增加数据库的流量.我想快递必须已经或已经做到,将"登录用户"信息保存在内存中,以便简化流程.我会感谢有关如何为此目的实现调整或任何其他解决方法/建议的想法.非常感谢!

session express passport.js

7
推荐指数
2
解决办法
3919
查看次数

http动词的Mongoose/Express授权

我有一个在mongoose和express上运行的node.js REST服务.我也使用merse来设置我的路由.

我现在想要实现的是以下类型的sceanrios:

Scenario I: e.g. blogpost
- GET -> no authentication required
- POST/PUT/DELETE -> authentication required

Scenario II: e.g. user
- GET -> authentication required
- POST/PUT/DELETE -> authentication required plus username of logged in user has to match
Run Code Online (Sandbox Code Playgroud)

我已经看过everyauth和mongoose-auth了,但找不到能给我这种控制的东西.

node.js express

4
推荐指数
1
解决办法
2475
查看次数