我们希望从后端服务为程序化地为用户创建新主题。是否可以在不经过登录流程的情况下,将 SSO 用户推送到 Discourse?
如果您正在使用 DiscourseConnect 为您的网站进行用户认证,您可以通过以下方法以编程方式创建或更新用户:使用 sync_sso 路由同步 DiscourseConnect 用户数据。请注意,此操作不会将用户登录到 Discourse,它仅用于创建用户。如果这不是您想要实现的目标,请向我们提供更多关于您具体需求的详细信息。
2 个赞
我们正是如此!太完美了。
顺便提一下,如果 新主题参数 能在 SSO 登录流程中保留下来,我们就不需要这样做。不过,我们找不到正确的实现方法,所以如果用户尚未登录,他们会被重定向到一个空白的主题表单。如果你认为这是一个 bug,我可以将其提交到某个地方。![]()
1 个赞
这应该是可以实现的。如果这些参数被移除了,我怀疑是你在使用的 SSO 代码将其移除,而不是 Discourse 本身。请查看这篇帖子以了解详情:https://meta.discourse.org/t/compose-a-new-pre-filled-personal-message-via-url/35984/11。请注意,该帖子中的示例 URL 是用于创建新的私信(PM),而非新话题。不过,同样的方法应该也适用于创建新话题。
1 个赞
哦,这样确实有效!不错。这个 URL 不会自动跳转回去,但链接到 SSO URL 超级简单:
http://localhost:3000/new-topic?title=wat&category=questions-and-help/build-debugging&tags=build
1 个赞