我正在为我正在构建的greenfield应用程序进行我的第一个API设计,并且可以使用一些关于RESTful的URI的指针。
作为背景,临床医生使用该系统来获取有关其患者的警报,因此我将创建一个屏幕,其中将显示属于分配给临床医生的所有患者的警报列表。
临床医生将能够按患者姓名或按警报类型查看警报。
我的第一个想法是让URI变得非常简单,如下所示:
/api/alerts -获取警报的完整列表
/api/alerts/123 -获取指定警报的详细信息
/api/alerts?user=mike -按用户获取警报列表
/api/alerts?user=mike&groupby=patients -获取按用户和按患者分组的警报列表
但我已经开始重新思考,并开始从用户的角度来考虑如何更好地显示关系,这让我想到:
/api/users -获取用户的完整列表
/api/users/mike -获取指定用户的详细信息
/api/users/mike/patients -获取所有指定用户患者的详细信息
/api/users/mike/patients/alerts -获取用户患者的所有警报
/api/users/mike/patients/123/alerts -获取指定用户患者的所有警报
/api/users/mike/patients/alerts?groupby=type -获取用户、患者和按警报类型分组的所有警报。
所以,如果我是在正确的轨道上,有任何想法和意见。
我应该选择一种方法而不是另一种方法,还是同时使用两种方法?
干杯,迈克
发布于 2013-06-28 04:39:15
在设计REST API时,您将重点放在资源上,据我所知,您的资源是“警报”,这是您的API的“用途”。因此,你的方法对我来说更有意义。
https://stackoverflow.com/questions/17344215
复制相似问题