API只能拉取20个帖子

拥有管理员权限。当我使用 /t/{}.json API 调用时,只看到 20 篇帖子。是否有设置可以让我查看该主题下的所有帖子?

1 个赞

返回的 JSON 对象中包含一个“加载更多”URL 字段,您可以通过该字段获取下一批帖子。无法通过 API 一次性获取所有帖子。

5 个赞

感谢您的回复。
这很有趣……我在我的 JSON 响应中没有看到任何这样的字段。它是在 Discourse API 的某个特定版本中引入的吗?
我目前使用的是 v 2.5。

我在那一点上可能说错了。接下来,你可以打开浏览器的开发者工具,切换到 Network 标签页,查看在 UI 中加载下一批帖子时发出了哪些请求。这应该能提供一些线索 :slight_smile:

请参阅

另外,使用 print=true 标志是获取超过 20 条帖子的另一种方法。

3 个赞

谢谢你,Blake!

关于 print=true,我在另一篇帖子中看到它有限制,最多只能处理 1000 篇帖子。

1 个赞

确实如此,但你可以通过添加 &page=2 来获取第 1001 到 2000 篇帖子,添加 &page=3 来获取第 2001 到 3000 篇帖子,依此类推以获取所有帖子。你需要根据 JSON 中 posts_count 的值进行一些计算,以确定总共有多少页。

2 个赞

感谢 Clawdia 的建议。

1 个赞

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