gpt4 book ai didi

rest - 在 RESTful 响应中包含聚合信息时的 URI

转载 作者:行者123 更新时间:2023-12-01 05:15:35 25 4
gpt4 key购买 nike

假设我有一个 RESTful API 方法来返回有关一系列位置的数据:

/地点

[{
location_id: 1,
location_name: 'Austin'
},{
location_id: 2,
location_name: 'San Francisco'
},{
location_id: 3,
location_name: 'Seattle'
}]

现在假设我想返回每个位置的聚合 employee_count:

[{
location_id: 1,
location_name: 'Austin',
employee_count: 96
},{
location_id: 2,
location_name: 'San Francisco',
employee_count: 71
},{
location_id: 3,
location_name: 'Seattle',
employee_count: 85
}]

那么,什么对 uri 最有意义?仍然/位置?或者/employees/locations?

我担心的是,每次向/locations 发出请求时计算 employee_count 可能会导致额外的浪费性开销,因为 employee_count 可能只在 5 - 10% 的时间内使用。

最佳答案

你可以把它放在任何一个地方,也可以同时放在两个地方。您的应用程序的需求应该决定该选择。

关于您提议的设计,更重要的一点是您的各个位置对象不包含 URI,以便客户端导航到每个位置以获取有关它们的更多详细信息。

相反,您只包含了一个 ID,您可能希望客户端使用它来构建特定于位置的 URI?如果是这样,您应该强烈考虑将完整的 URI 添加到每个位置的有效负载(例如,“链接”或“href”)。如果没有适当的方法,您将把您的客户与您的 URI 结构耦合起来,并使您的系统 future 的发展更加困难。仅供引用,这种方法通常称为 HATEOAS (超媒体作为应用程序状态的引擎)。

关于rest - 在 RESTful 响应中包含聚合信息时的 URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11400026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com