代码之家  ›  专栏  ›  技术社区  ›  AndrewShmig

RESTfulAPI范式中描述资源统计的正确方法是什么?

  •  0
  • AndrewShmig  · 技术社区  · 6 年前

    假设我们有 users 收集。各 user (单个资源)有某种类型的统计信息-注释数、调用数、任何东西的数量。每一个 用户 集合也可能具有某种类型的统计信息-全局统计信息。

    这些统计数据可以是任何东西,从评论的数量到更复杂的东西。

    目前,我正在考虑两种将统计信息“集成”到RESTfulAPI的主要方法:

    1. 对于每个资源 用户 添加特殊计算字段- balance , mediumAgeOfMaleFriends 等等,在表演时 GET 请求到 用户 我将为查询参数中的每个字段循环资源 fields 并计算出相应的数值。例子: .../user/123?fields=balance,name,email,mediumAgeOfFemaleFriends
    2. 在每个资源下创建名为 reports (或类似的),创建报表资源模板(使用预定义的配置)并执行相同的操作 得到 这样的请求: .../users/123/reports/1?from=...&to=...

    但这两种方式看起来不像真正的休息方式。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Mo A    6 年前

    我认为统计和报告本身并没有一个休息的约定。你的两个选择对我来说都是合理的(倾向于 选项2 尽管如此。

    另一种选择是为“报告”提供根资源,例如 /reports/user/123 . 如果您决定将报表扩展到“用户”以外的其他资源,这在将来可能会很有用。

    你也可以看看 HubSpots Analytics - Reports API 为了灵感。