响应DELETE请求
DELETE请求表示删除资源的意图。 因此,如果服务成功处理了DELETE请求,除了返回204(无内容)外,它还能做什么? 毕竟,资源刚刚被删除。
资源通常是集合的成员,或者由容器“拥有”。 例如,[http://foo.ploeh.dk/api/tags/rock]代表一个“ rock”标签,但另一种查看方式是/ rock资源包含在标签容器中( 本身就是一种资源)。 Atom Pub用户应该熟悉它。
假设您要删除[http://foo.ploeh.dk/api/tags/rock]资源。 为了实现该目标,您对它发出DELETE请求。 如果您的客户回来的都是204(无内容),那么它就失去了上下文。 它从那里去哪里? 除非您保持对客户端的状态,否则您将不知道您来自何方。
API不应返回204(无内容),而是应该会有所帮助并建议要去的地方。 在此示例中,我认为要提供的一个明显链接是[http://foo.ploeh.dk/api/tags]-客户端刚刚从中删除资源的容器。 客户端可能希望删除更多资源,因此这将是一个有用的链接。