将徽章数据导入我的网站数据库

各位团队成员,

我想将我的 Discourse 论坛中的所有徽章数据自动保存到我的 PHP 网站数据库中。目前我是手动操作的,但我希望设置类似 Webhooks 的机制,或者使用 API 来自动更新网站数据库中的数据,或者让网站上的用户获得相同的徽章。请问有人能告诉我如何实现吗?

我认为徽章没有 webhook,因此你需要使用插件来实现。你可以使用数据探索插件执行查询以获取徽章信息,并通过 API 访问该查询结果。

你为何要将它们集成到你的 PHP 网站中?或许有一种方法可以在不复制到数据库的情况下解决该问题。

@pfaffman 我拥有一个基于 PHP 的在线教程网站,并打算创建一个 Discourse 论坛用于用户支持。我的网站上已有徽章系统,我希望在 Discourse 上设置相同的徽章(我会编辑徽章使其保持一致),但它们需要与我们的网站同步,以确保功能一致(同一用户访问论坛时,应能使用与网站相同的徽章权限)。

我会尝试您的建议,并计划明天发帖反馈。如果您有其他建议(例如是否有现成的插件可用),请随时告知。此外,我计划通过嵌入方式集成话题讨论,目前仅剩徽章功能尚未完成,这一点非常关键。

或许你可以通过 API 获取用户组信息并嵌入到另一个网站。或者,可以设置一个定时任务(cron job),通过 API 拉取用户组数据并更新数据库。

请查看 如何逆向工程 Discourse API

1 个赞

亲爱的 @pfaffman,感谢您的建议,我将通过 API 更新数据库。此外,我还有一个问题:我目前在我的实例上使用 Bitnami LAMP 5.6.23-0 镜像,现在需要创建一个支持论坛,并希望在同一台运行 LAMP Bitnami 的服务器上安装该论坛。我想安装 Discourse 论坛,但由于成本原因,我无法为论坛使用新的实例,因此希望将其安装在同一个 AWS 实例上。

恳请您协助我完成此安装,因为我在网上找不到相关文档。

我的实例拥有 50GB 内存和 8GB RAM,我只需要安装文档。

我已尝试过以下方法:

  1. 使用 Docker(无法启动):报错“Failed to issue method call: Unit docker.service failed to load: No such file or directory.”。请查看系统日志并运行 systemctl status docker.service 以获取详细信息。
  2. 不使用 Docker(无法启动 Redis 和 PostgreSQL)。
  3. Apache2 位于 Bitnami 目录 /opt/bitnami/apache2 中,即使我添加新配置,Apache2 也不会生效;如果尝试在外部安装,系统会提示端口已被占用。

此处不支持 Bitnami。有一些关于运行多个站点的操作指南主题,或许能对你有所帮助。

我想我得新建一个实例了。

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.