URL中的其余API链接参数

时间:2018-09-11 17:56:44

标签: rest restful-url

我目前正在设计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

1 个答案:

答案 0 :(得分:1)

首先,您的REST基本端点应该是这样的:

  • [POST]添加组/groups
  • [GET]获取所有组/groups
  • [GET]通过ID`/ groups / {id}来获取/获取组
  • [PUT]通过id`/ groups / {id}更新/修改组
  • [DELETE]删​​除ID为`/ groups / {id}的网上论坛

  • [POST]添加事件/events
  • [GET]获取所有事件/events
  • [GET]通过id`/ events / {id}
  • 获取/获取事件
  • [PUT]通过id`/ events / {id}
  • 更新/修改事件
  • [DELETE]通过ID`/ events / {id}
  • 删除事件

所以现在来吧,您想像id一样在/groups/group/{groupId}/events/event/{eventId}处获取特定组的事件,对吗?

您可以像这样获取组中的所有事件:

  • /events?group_id={groupId}可以在这里实现。
  • 对于副varsa,您也可以通过此/groups?event_id={event_Id}
  • 获取所有具有特定事件的组
  • 现在,如果您要获取特定的组和特定的事件,则可以通过/groups/{id}?event={eventId}来执行Group REST上方的第三条路由或端点,而副varsa则相同。