用于获取对象列表的REST(GET方法)命名
我有一个用于获取对象列表的REST(GET方法)命名,rest,methods,naming-conventions,naming,Rest,Methods,Naming Conventions,Naming,我有一个课程列表和一个学生列表。这个想法是一个学生可以参加多种课程 要求返回统一的课程学生列表,其中“键”类似于courseId+studentId。获取的结果如下所示: courseId,courseName,studentId,studentName 我的问题是,定义REST-GET方法的最佳方法是什么。我有两种解决方案,欢迎提出任何想法 GET:api name/v1/courses/students?version=5-所有学生从所有课程返回 GET:api name/v1/cour
课程列表
和一个学生列表
。这个想法是一个学生可以参加多种课程
要求返回统一的课程学生列表,其中“键”类似于courseId+studentId
。获取的结果如下所示:
- courseId,courseName,studentId,studentName
GET:api name/v1/courses/students?version=5
-所有学生从所有课程返回GET:api name/v1/courses students?version=5
-在本例中,是作为课程学员的专用方法此外,这种关系可以被视为一种新资源的说法是一个强有力的论据。我敢打赌第二种选择,因为您正在公开一种新的资源,即课程和学生之间的关系,甚至可以通过与两个ID相关的“键”来识别 例如,使用此选项可以使用键查找新资源,或使用查询字符串参数筛选此新资源(例如
api name/v1/courses students?courseId=12,45&studentId=32,67
),或请求个别课程的学生(api name/v1/courses/{courseId}/students
),或针对单个学生的课程(api name/v1/students/{studentId}/courses
)
关于这个主题,有一个问题有很好的答案。谢谢你的建议和其他帖子的链接。我还打算使用解决方案2。不客气!如果您同意并且这满足了您的问题,请用以下答案结束主题:)