这是我的使用场景:我想在论坛首页展示最新的 5 个和最热门的话题。我需要针对特定的 Discourse 用户进行过滤——例如,我的部分用户可以访问某个私密分类(其中的话题应当出现在最新/最热门列表中),而其他用户则没有此权限。
目前,当我调用 Discourse API 获取所需数据时,我使用的是系统 API 密钥。这返回的结果不仅包含隐藏分类,还会在列表顶部始终显示全局置顶的话题(即使用户早已取消置顶)。
因此,您应该能理解为什么我需要针对特定用户获取最新/最热门话题,而不是整个论坛的范围。
如果通过用户 API 密钥调用能够实现此功能,那将是一个不同的问题——似乎非常笨拙,每次需要为用户检索这些结果时,都必须(通过编程方式)创建一个用户 API 密钥。(而且显然需要在之后立即销毁该密钥,因为我并不需要它用于其他用途。)这是唯一的办法吗?
我提出一个解决方案:如果使用系统 API 密钥调用 latest.json 或 top.json,这些端点可以接受一个可选的用户 ID 参数,以限制返回结果的范围。
