Hacker News API 如何在 Firebase 上生成 topStories 和 newStories 端点?
How does the Hacker News API produce a topStories and newStories endpoint on Firebase?
Hacker News Firebase API 是公开可用的,具有多个端点,允许您查询任何新闻项目和用户。此外,正如他们的 Github 自述文件所述:
Up to 500 top and new stories are at /v0/topstories (also contains jobs) and /v0/newstories. Best stories are at /v0/beststories.
例如,点击 https://hacker-news.firebaseio.com/v0/topstories.json?print=pretty returns 那个时间点 HN 上排名前 500 的故事的 ID。
我的问题是,这些端点是如何在 Firebase 端创建和更新的? Firebase 数据库允许一些规则,例如 indexOn
优化按 ID 或投票等排序的查询......,但用户仍然需要进行查询以请求排序的数据,例如使用 orderBy()
。我在 Firebase 控制台或文档中看不到用于创建这些端点并在云中更新它们的任何地方,因此端点始终返回最新数据。这是如何工作的?
似乎没有办法让端点像 Firebase 即时生成的内容那样。这些端点似乎只是普通的数据端点,它们的数据由 Hacker News 后端不断更新以确保正确。 Firebase 无论如何都不是 HN 数据的真实来源:只要真实数据库中的基础数据发生变化,API 中的 所有 数据都会由脚本更新。
Hacker News Firebase API 是公开可用的,具有多个端点,允许您查询任何新闻项目和用户。此外,正如他们的 Github 自述文件所述:
Up to 500 top and new stories are at /v0/topstories (also contains jobs) and /v0/newstories. Best stories are at /v0/beststories.
例如,点击 https://hacker-news.firebaseio.com/v0/topstories.json?print=pretty returns 那个时间点 HN 上排名前 500 的故事的 ID。
我的问题是,这些端点是如何在 Firebase 端创建和更新的? Firebase 数据库允许一些规则,例如 indexOn
优化按 ID 或投票等排序的查询......,但用户仍然需要进行查询以请求排序的数据,例如使用 orderBy()
。我在 Firebase 控制台或文档中看不到用于创建这些端点并在云中更新它们的任何地方,因此端点始终返回最新数据。这是如何工作的?
似乎没有办法让端点像 Firebase 即时生成的内容那样。这些端点似乎只是普通的数据端点,它们的数据由 Hacker News 后端不断更新以确保正确。 Firebase 无论如何都不是 HN 数据的真实来源:只要真实数据库中的基础数据发生变化,API 中的 所有 数据都会由脚本更新。