为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

凤凰求蛊 2023-03-24 13:37:28
所以我正在开发 PERN 堆栈应用程序(postgresql、expressjs、reactjs、nodejs)。我想知道... facebook 或 instagram 是如何编码的,如果我登录了,url: www.instagram.com显示我的提要,但如果我没有登录,www.instagram.com显示登录页面(无需将 url 更改为 instagram.com/login 或类似内容...)所以我的问题是,他们是怎么做到的?我尝试使用 React 路由器研究解决方案,但找不到任何:/...我认为这可以通过更改应用程序的状态来完成,但这不是我想在我的应用程序上解决路由问题的方式。(这是一种社交媒体应用程序)
查看完整描述

1 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

作为一般的逻辑流程,我建议如下:

  1. 定义一个主页路由,即应用程序基本 url (/),这样它是授权和非授权页面的通用路由。这也应该是 react-router 中的根路由组件。

  2. 第一步检查主路由中的用户会话/身份验证:

    • 如果用户通过身份验证,则渲染授权组件和子路由eg:/profile,/account等。

    • 否则,呈现通常是登录/注册页面的公共组件。

  3. 注销时,将用户重定向回主路由 (/)。

这是一个非常高级的流程,无论您使用何种堆栈,它通常都几乎相同。


查看完整回答
反对 回复 2023-03-24
  • 1 回答
  • 0 关注
  • 60 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信