我能向 Discourse API 发送一个外部 URL,让它返回链接到该 URL 的主题吗?

是否可以在外部非 Discourse 网站上设置一个“讨论此页面的论坛主题”部分,其中包含指向相关 Discourse 论坛主题的链接?

如果 API 可以接受一个 URL 并返回主题 ID/URL 列表,那就太完美了。

您知道如何通过 Javascript 在其他网站上嵌入 Discourse 评论(Embed Discourse comments on another website via Javascript)吗?

但是,如果您认为多个主题链接到某个页面,那么您或许可以使用 TopicLink 表来搜索链接到该 URL 的主题(可能需要使用 Data Explorer 插件),然后您就可以获得主题和帖子的 ID,以便链接到它们。

我不认为有一个端点可以获取它们。我想插件可以使其可用。另外,Discourse GitHub 做了类似的事情,所以那可能会有帮助。

1 个赞

您认为我可以通过 URL 参数创建查询,并使用此链接通过 API 运行它吗?Run Data Explorer queries with the Discourse API.

2 个赞

是的,我想是这样,有点吧。

试试这个,例如:

https://meta.discourse.org/search.json?q=https%3A%2F%2Fnews.bbc.co.uk

在 JavaScript 中整理结果。

如果匿名用户可以使用搜索,那么您可能甚至不需要 API 密钥(然后您可以将其放在客户端)。

但是,您可能希望在外部服务器上缓存结果以获得最佳效果,并避免使贫穷的 Discourse 被搜索查询淹没。

因此,这可能涉及在您的外部网站上编写服务器端代码以获得最佳结果。

2 个赞

哇,谢谢 Robert,这确实有效,我刚在自己的服务器上试过了。

这听起来非常像我之前试图做的事情。我的另一个服务器使用 PHP,我弄清楚了如何在 PHP 模块中使用 Curl 命令来访问 API 并将 json 结果返回给来自客户端的 ajax 调用。这是那个主题

1 个赞

哦!当然了。常规搜索就能找到那个 URL!:person_facepalming:

1 个赞