1

https://github.com/maxmantz/redux-oidc-example中提供的示例代码假定用户明确单击某种“登录”按钮以使用 OpenID Connect 登录。如果 OpenID Connect 只是应用程序支持的可能登录类型之一,则此方法可以正常工作。

但是,如果我们假设一个纯单点登录场景,其中使用 OpenID Connect 登录是唯一可能的选择,我认为强制用户执行额外的按钮单击几乎没有意义 - 相反,SPA 代码应该自动重定向用户到 IdentityServer 的登录页面。

所以我的问题是在 React / Redux / React Router SPA 应用程序中执行这种重定向的正确方法是什么?会调用

userManager.signInRedirect();

来自 React 组件componentDidMount是一种不会破坏 react-router 正常操作的好方法吗?

以防万一:有问题的登录页面本身显然不是 SPA 的路由,因为它由 IdentityServer 托管,并且导航到登录页面可能涉及进一步重定向到外部身份提供者(例如 ADFS)。所以我相信 react-router 的 AuthFlow 例子在这里不适用。

4

0 回答 0