Authentication 如何在基于cookie的身份验证流中避免不必要的往返

Authentication 如何在基于cookie的身份验证流中避免不必要的往返,authentication,cookies,oauth,single-page-application,Authentication,Cookies,Oauth,Single Page Application,我当前的项目是一个SPA,包括客户端的React和Redux,服务器端的Node.js和express。我正在使用passport.js处理Oauth 当前的流程如下所示: 1) 访问者输入站点url,我们返回main.js包 2) 应用程序启动后,我们可以调用后端('/api/user/me'),它要么返回用户状态,要么什么也不返回 3) 我们现在可以确定用户是否已登录,以及我们的应用程序是否应显示“公共欢迎页面”或“私人仪表板页面” 4) 最后,延迟加载用户有权使用的页面组件 我的问题对应于

我当前的项目是一个SPA,包括客户端的React和Redux,服务器端的Node.js和express。我正在使用passport.js处理Oauth

当前的流程如下所示:

1) 访问者输入站点url,我们返回main.js包

2) 应用程序启动后,我们可以调用后端('/api/user/me'),它要么返回用户状态,要么什么也不返回

3) 我们现在可以确定用户是否已登录,以及我们的应用程序是否应显示“公共欢迎页面”或“私人仪表板页面”

4) 最后,延迟加载用户有权使用的页面组件

我的问题对应于第2节),因为这似乎是一种不必要的往返,当我们的访问者已经在步骤1)中与我们的后端通信时。 毕竟,我只需要在Redux中切换一个值即可显示“欢迎”或“仪表板”页面。此外,它会阻塞4),这使得加载时间更长


那么,我应该如何处理这种来回的情况呢?

在一位AuthO倡导者的演示中,他提到,他们基于cookie的身份验证必须与身份验证服务器通信才能工作。除了他们在页面上设置一个快速iframe,快速查询他们的身份服务器,验证cookie,如果您的身份验证尚未过期,他们只需刷新您的令牌。你很乐意去做那件事

这是如何回答这个问题的?它是如何回答的?这听起来像是额外的来回,而不是更少。