我正在开发一个供客户端使用的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,但这是一个未开发的项目,所以我想尝试找到整体首选的方式来使最终用户/开发人员不感兴趣,并保留我的理智:)