有大量资源可以概述如何为RESTful API组织URL,但对于Web来说,通常很难找到。
如何构建网页的网址以便它们
要应用某些上下文,我们假设groups
包含elements
,并且有用例创建,查看,编辑和删除两者。
答案 0 :(得分:0)
除了应用程序设计之外,您可能无法找到有关此问题的信息,因为它是涉及Information Architecture (IA)和SEO的问题。如果您的应用程序或站点在Internet(而不是内部专用网络)上可用,那么您必须优化多个(有时是冲突的)约束:
一般情况下,我建议您首先确定您的约束,并考虑对用户有意义的事情。作为一个高度优先的人。然后尝试从那里开始其他约束。既然你提到了关注点的分离,你就会很清楚你的设计约束是什么。最终,由您(以及可能是您的企业中小企业)决定哪些约束需要严格,哪些其他约束可以放松。
答案 1 :(得分:0)
经过深思熟虑,我开始认为这是
/groups/create
/group/{gid}/
/group/{gid}/edit
/group/{gid}/delete
/group/{gid}/elements/create
/group/{gid}/element/{eid}/
/group/{gid}/element/{eid}/edit
/group/{gid}/element/{eid}/delete
唯一的缺点是,群组是针对/groups/create
而不是/group/create
创建的,否则群组名称create
将变为非法。
另一种变体是在最后附加id
,但网址很快变得笨拙
/groups/create
/groups/view/{id}
/groups/edit/{id}
/groups/delete/{id}
/groups/view/{id}/element/create
/groups/view/{id}/element/view/{eid}
/groups/view/{id}/element/edit/{eid}
/groups/view/{id}/element/delete/{eid}