部分启用登录选项

我们目前正在将我们的 Discourse 社区与 Discord 服务器进行集成。我们使用的是 Discourse Bot 插件。然而,该插件需要启用 Discord 登录才能正常工作。

我们希望继续使用自定义的 OAuth2 解决方案,同时允许链接 Discord 账户。

是否有任何方法可以启用 /auth/discord URL,而实际上不启用登录选项?

这里最简单的方法是用 CSS 隐藏登录弹窗中的 Discord 按钮。

是的,但这并不是我们真正想要达到的效果。我们已经实现了这一点。:sweat_smile:

通过 CSS 隐藏按钮,你仍然会强制弹出模态框。之前,点击“登录”按钮会直接重定向到我们的 OAuth2 服务器,用户只需一个流程即可完成登录。而现在,他们看到的是模态框,并且必须点击“使用 OAuth2 登录”。

是否可以在点击“登录”按钮时直接跳转至 OAuth2,同时保留两种认证选项?


启用两个选项并通过 CSS 隐藏后,用户会看到如下界面:

理想情况下,用户点击“登录”按钮后应立即被重定向到 OAuth2 流程。

我和 @Roman 几年前就针对这个具体问题提出了解决方案。由于这是一个相当小众的使用场景,因此并未开源,但方案如下:

谢谢!这正是我们想要的。:+1: