在两个节点应用之间共享会话

我有一个使用passport-local-mongoose进行身份validation的节点应用程序。 我有第一个应用程序的iframe中的第二个节点应用程序。 我想用第一个应用的同一会话保护第二个应用中的快速路由,以便用户只login一次,但第二个应用中的快速路由仍然受到保护。 有两种节点应用程序共享会话的方法吗? 或者也许有另一种方法?

谢谢。

我能想到的最简单的方法就是将会话存储在MongoDB中。 然后你的第二个应用程序的中间件可以检查通过请求传递的会话对同一个数据库。 这种方法的缺点是你必须在两个地方实现一些相同的authentication逻辑。

也许更好,你可以build立一个专门处理authentication的第三个微服务。 这基本上会包装你的会话存储,并将authentication逻辑集中在一个地方。 其他两个应用程序都会使用此服务。 这是我仍然在学习个人的一个领域,这个网站一直很有帮助: https : //dejanglozic.com/2014/10/07/sharing-micro-service-authentication-using-nginx-passport-and-redis / 。