Javascript 用于多次登录的多个会话,无需任何存储

Javascript 用于多次登录的多个会话,无需任何存储,javascript,node.js,session,cookies,express-session,Javascript,Node.js,Session,Cookies,Express Session,我正在使用express session处理node.js中的会话以及区块链案例的fabric composer。 这是为了发展 问题: 我们有A、B组织,如果我登录到A,并且在相同的浏览器(另一个选项卡)如果我登录到B,并且如果A登录的选项卡被刷新,它将加载B的会话数据(这是最新的会话) 我想在同一浏览器中的选项卡之间分离A和B之间的会话 我不想设置任何商店。 我并没有在这方面做太多尝试,我想开始的很好,因为这是我第一次在这节课上工作。所以,如果我能得到一个开始的指导,继续前进,以及一些可以尝

我正在使用express session处理node.js中的会话以及区块链案例的fabric composer。 这是为了发展

问题:

我们有A、B组织,如果我登录到A,并且在相同的浏览器(另一个选项卡)如果我登录到B,并且如果A登录的选项卡被刷新,它将加载B的会话数据(这是最新的会话)

我想在同一浏览器中的选项卡之间分离A和B之间的会话

我不想设置任何商店。 我并没有在这方面做太多尝试,我想开始的很好,因为这是我第一次在这节课上工作。所以,如果我能得到一个开始的指导,继续前进,以及一些可以尝试的例子,这将是很有帮助的

我已经讨论了一些与会话相关的问题,但大多数答案都是使用STORE解决的(比如单独的DB,因为我正在使用区块链,并且只处理几KBs的数据,我认为我不想设置整个新DB)


首先,我不知道nodejs,所以我的答案是web general

您可以在不分离数据库的情况下完成所需的操作。不使用cookie可以在同一浏览器中打开多个会话

如果在成功登录后将
会话id
发送到浏览器,则可以实现这一点。此
会话\u id
应完成Cookie的工作。浏览器应该随每个请求一起发送它(就像cookie一样),您在服务器端确保它创建了有效的活动会话。我不知道nodejs中是否有一些现成的东西

示例URL:
http://yoursite.com/somepage?session_id=some_session_id_from_database

有个问题

这种方式有一个安全缺陷:每当从查询字符串中窃取此
会话\u id
时,人们可以使用它“登录”到您的站点,而无需有效的身份验证。与Cookie相同,但与查询字符串相比,Cookie很难被窃取。这就像在URL中输入密码一样您不能将其放入
POST
请求中,因为您不能在类型为
POST


我希望我已经回答了这个问题。很抱歉我的英语不好。

首先:我不知道
nodejs
,所以我的答案是web general

您可以在不分离数据库的情况下完成所需的操作。不使用cookie可以在同一浏览器中打开多个会话

如果在成功登录后将
会话id
发送到浏览器,则可以实现这一点。此
会话\u id
应完成Cookie的工作。浏览器应该随每个请求一起发送它(就像cookie一样),您在服务器端确保它创建了有效的活动会话。我不知道nodejs中是否有一些现成的东西

示例URL:
http://yoursite.com/somepage?session_id=some_session_id_from_database

有个问题

这种方式有一个安全缺陷:每当从查询字符串中窃取此
会话\u id
时,人们可以使用它“登录”到您的站点,而无需有效的身份验证。与Cookie相同,但与查询字符串相比,Cookie很难被窃取。这就像在URL中输入密码一样您不能将其放入
POST
请求中,因为您不能在类型为
POST


我希望我已经回答了这个问题。很抱歉我的英语不好。

我已经找到了答案,但不知道有没有风险

我所做的

正在为应用程序创建一次会话(我只运行一个应用程序)。 首先,我为每个组织都有一个单独的路由器,即公共登录路由(第页)

因此,我对每个成功登录都执行session.regenarate(),以便登录后的会话对于该特定用户是唯一的

现在,我可以登录两个不同的组织在同一个浏览器和不同的标签


我需要对它进行更多的测试,看是否存在风险或缺陷。。如果你们想到任何。。请在下面发表评论。

我已经找到了答案,但不知道有没有风险

我所做的

正在为应用程序创建一次会话(我只运行一个应用程序)。 首先,我为每个组织都有一个单独的路由器,即公共登录路由(第页)

因此,我对每个成功登录都执行session.regenarate(),以便登录后的会话对于该特定用户是唯一的

现在,我可以登录两个不同的组织在同一个浏览器和不同的标签


我需要对它进行更多的测试,看是否存在风险或缺陷。。如果你们想到任何。。请在下面发表评论。

谢谢您的回答。。这对我在会话设置方面面临的问题提供了一点概述。我特别关注express.js解决方案和更精确的答案。感谢您的回答。。这对我在会话设置方面面临的问题提供了一点概述。我专门寻找express.js解决方案和更精确的答案。