【问题标题】:Proper way to handle server-side protected routes in React?在 React 中处理服务器端受保护路由的正确方法?
【发布时间】:2018-11-09 23:38:06
【问题描述】:

我是新手,放轻松。 我的理解是 React 代码完全在客户端运行,因此在 react-router 中保护路由只是一种 UI 便利,它们实际上根本没有受到保护,对吧?

那么在 React 应用程序中保护路由的公认方法是什么?我唯一能想到的是有多个反应应用程序,一个在用户未登录时交付,另一个在用户登录时交付。这是正确的吗?我完全误解了反应的工作原理吗?谢谢。

【问题讨论】:

    标签: reactjs routes react-router protected


    【解决方案1】:

    React 并不是应用程序运行方式的真正范式转变,更重要的是它们的组织方式。更多的内聚而不是耦合,简单的状态机;这些道具 = 这个组件的初始状态。

    您所知道的有关如何构建 Web 应用程序的所有内容仍然适用。可以像react-starter-kit 那样进行服务器端渲染,也可以像create-react-app 那样不进行服务器端渲染。 React 可以在服务器和客户端上运行。

    在所述场景中,将进行身份验证。认为混乱是认为您通过下载客户端拥有整个应用程序。虽然这可能是真的,但通常情况并非如此。对于像管理面板这样的东西,将配置 webpack 以将其移动到一个单独的包中,该包在您的客户端包通过身份验证为管理员角色后延迟加载。

    认为这真的归结为纯粹的单页应用程序架构与经典单体架构,与 React 的关系不大。希望对您有所帮助!

    【讨论】:

    • 确实如此,谢谢。我指的是单页架构,我将研究延迟加载和 webpack 捆绑。
    猜你喜欢
    • 2016-05-15
    • 1970-01-01
    • 2020-02-03
    • 1970-01-01
    • 2015-03-29
    • 2020-10-26
    • 2019-05-31
    • 2021-02-13
    • 2020-11-02
    相关资源
    最近更新 更多