在REST API中,当需要参数来确定需要删除哪些资源时,我们如何创建DELETE方法?
例如,照片可以属于用户和群组,如果我们有照片的端点,我们需要其他信息来确定是否要删除用户照片或分组照片,例如,
/photos?userId={userId}
/photos?groupId={groupId}
这是一个很好的宁静练习吗?
或者,DELETE只能通过用户/:id / photo或groups /:id / photo端点严格执行吗?
答案 0 :(得分:13)
在集合上使用DELETE并通过查询参数进行过滤没有任何问题。 REST论文和HTTP规范都没有说不做这件事。
这与@Thilo所关联的问题的答案不同,因为情况不同。那个问题是关于包含一个"不,真的,删除它!"查询参数,这是不合适的。您正在使用查询参数来过滤应删除的结果。