我目前正在设计REST API。我有一个Group
实体和一个Event
实体。一个Event
恰好属于一个Group
,但是一个Group
可以有多个Events
。
Groups
/groups/group/{groupId}
我不确定Event
端点的放置位置:
/groups/group/{groupId}/events/event/{eventId}
或者只是
/events/event/{eventId}
上面的方法更容易将新的Events
发布到Group
中,而下面的方法则更容易获得有关一个Event
的数据。
我应该使用其中的哪一个,还是应该“混合”使用它们? (一个用于GET
,一个用于POST
)
答案 0 :(得分:1)
首先,您的REST基本端点应该是这样的:
/groups
/groups
/events
/events
所以现在来吧,您想像id
一样在/groups/group/{groupId}/events/event/{eventId}
处获取特定组的事件,对吗?
您可以像这样获取组中的所有事件:
/events?group_id={groupId}
可以在这里实现。 /groups?event_id={event_Id}
/groups/{id}?event={eventId}
来执行Group REST上方的第三条路由或端点,而副varsa则相同。