【发布时间】:2021-01-10 05:19:10
【问题描述】:
假设我们有两个微服务:公司 API 和帐户 API。
我们还有一个仪表板,显示有关帐户的一些数据和可视化。
仪表板包括三个小部件(为了简化):
小部件 1 - 按某些条件过滤的帐户表格,例如,仅显示待处理帐户。它还显示与帐户的公司属性相关的几列。
小部件 2 - 按帐户属性之一显示帐户细分的饼图。
小部件 3 - 另一个显示公司帐户明细的图表。
理论上,仪表板中的所有小部件都显示有关同一实体 - 帐户的数据。
现在,我想问一下在 UI 中获取和显示帐户的两种方法:
一般 REST 端点方法
- 创建一个用于获取帐户的通用端点。
- 为获取公司创建一个通用端点。
- 用户进入页面后获取所有帐户。
- 用户进入页面后获取所有公司。
- 让每个小部件根据自己的需要操作、过滤和连接数据。
- 大部分逻辑位于前端。
每个小部件的 REST 端点方法
- 为每个小部件创建一个端点,该端点返回特定小部件的所有相关数据,这些数据已根据小部件需求进行过滤、操作和连接。
- 每个小部件都会调用其端点并显示数据。
- 大部分逻辑位于后端。
我的问题是:
- 每种方法的优缺点是什么?
- 在哪种情况下,您会选择一种方式而不是另一种方式?
- 还有其他想法可以解决这个用例吗?
【问题讨论】:
标签: rest microservices api-design