猿问

如果用户未登录,如何为主页提要和登录页面提供相同的 URL?

所以我正在开发 PERN 堆栈应用程序(postgresql、expressjs、reactjs、nodejs)。

我想知道... facebook 或 instagram 是如何编码的,如果我登录了,url: www.instagram.com显示我的提要,但如果我没有登录,www.instagram.com显示登录页面(无需将 url 更改为 instagram.com/login 或类似内容...)

所以我的问题是,他们是怎么做到的?

我尝试使用 React 路由器研究解决方案,但找不到任何:/...

我认为这可以通过更改应用程序的状态来完成,但这不是我想在我的应用程序上解决路由问题的方式。(这是一种社交媒体应用程序)


凤凰求蛊
浏览 96回答 1
1回答

慕婉清6462132

作为一般的逻辑流程,我建议如下:定义一个主页路由,即应用程序基本 url (/),这样它是授权和非授权页面的通用路由。这也应该是 react-router 中的根路由组件。第一步检查主路由中的用户会话/身份验证:如果用户通过身份验证,则渲染授权组件和子路由eg:/profile,/account等。否则,呈现通常是登录/注册页面的公共组件。注销时,将用户重定向回主路由 (/)。这是一个非常高级的流程,无论您使用何种堆栈,它通常都几乎相同。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答