为api使用者返回Type id描述的最佳实践

时间:2019-08-02 16:22:21

标签: rest api

我正在开发一个供客户端使用的api。

一些对象,例如一个人可能拥有多个电话的电话将具有多个类型的ID。我有服务器端电话类型的列表,要求消费者不传递任何值,并且它将默认使用该值或传递一个ID来代表正确的值。现在,这本身不是我的问题,但是,当您在许多对象中扩展类型ID时,就会遇到我的问题。

如果作为开发人员您正在使用API​​数据,您是希望使用单个URI端点来检索所有类型ID和描述,还是希望使用多个端点来调用每个类型ID列表(这会并且促使我之前使用其他API)或仅记录所有ID(尽管这始终是一个移动目标)

基本上,客户将通过API将其数据推送到系统中,然后我们将以某种方式处理数据,并从处理的数据中生成报告。

那么什么是首选?

单个端点 GET:domain / root / allTypes

19/08/02 14:19:09 ERROR Driver: config.file : null
19/08/02 14:19:09 ERROR yarn.ApplicationMaster: User class threw exception: com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'sit'

多个终点 GET:域/根/电话/类型

{
"TelephoneTypes":[
  {"id": 123, "description":"Home"},
  ...
  {"id": 789, "description":"Mobile"}
]
},
"EmailTypes":[
  {"id": 234, "description":"personal"},
  ...
  {"id": 567, "description":"work"}
]
}

获取:域/根/电子邮件/类型

{
"TelephoneTypes":[
  {"id": 123, "description":"Home"},
  ...
  {"id": 789, "description":"Mobile"}
]
}

我确定上下文会影响结果,并且我尝试为问题提供一个简单的范围。我对通用的首选消费方式非常感兴趣,因为我已经使用了多个API并添加了更多的API,但这是一个未开发的项目,所以我想尝试找到整体首选的方式来使最终用户/开发人员不感兴趣,并保留我的理智:)

0 个答案:

没有答案