如何为大型的,多响应的api(如下所述)设计包装器?

时间:2019-02-20 08:31:21

标签: api oop design-patterns api-design

让我解释一下。可以说,某个组织中存在某种服务,可以公开公司资产的信息,从员工公司发行的设备(笔记本电脑和问题)到每层的大型施乐打印机到许多不同服务器机房中的大型服务器。这些对象(笔记本电脑,企业打印机,服务器)中的每一个都有其自己的属性集。

例如/ api / v1 / assets

此服务位于许多不同的资产管理数据库的前面。基本上,您会发送这个大的JSON对象,问您是否想要它是用户个人笔记本电脑上的信息还是服务器上的信息。

请求可能看起来像这样

{ "asset_type" : "laptop", "attributes" : ["assignee", "os", "physical_address", "manufacturer"]}

响应看起来像这样

[{"assignee" : "238947", "os":"Win7Prem", "physical_address" : "3C:BF:12:90:0A:X2", "manufacturer":"Dell"}

想象一下,这些对象中的每一个都具有20-30个以上的属性,并且对于每个请求,您可以传递一个filterList,该列表允许您基于1个或多个属性的值来过滤响应。例如,将所有笔记本电脑拉到Manufacturer =“ Dell”。

您将如何设计将其用于其他应用程序的api包装器?

您是否只将这些预先构建的查询保存在服务器上的文件中,并在需要时将其获取?也许是一台用于查询的单独服务器,然后只需进行api调用?

或...

您是否要编写AssetsAPI类并创建方法?您将如何组织电话?跟踪查询和属性?您会为每种资产类型创建类吗?

我要说的是,资产数据是通过应用程序调用的,经过了一些浓缩过程,然后通过调用api作为另一个api响应提供服务

0 个答案:

没有答案