2013-04-24 58 views
1

我目前正在开发一个具有发送资源的项目。REST API - 通用或特定资源

假设URI看起来像这样只有POST动词的http://api.somename.com/thingssender

随着时间的推移,这已成为一种资源,在有效载荷中有几个“可选”元素只适用于发送一种类型的东西。

目前这个资源处理两种不同类型的事物(ThingA和ThingB),但是也随着子元素的内容而变化。因此,例如,您可以将许多事情或一件事发送给一群人。

需求已经出现,需要一个ThingC。考虑到这个端点可能会在将来使用有效载荷中的可选数据来使用ThingD,我开始质疑这种“全部”资源。

我担心资源的复杂性不断增长,不仅对于开发人员而且对于使用REST API的客户端来说。对我来说,这只会造成混淆,并不会创造最佳体验(对开发人员和客户来说都是如此)。

什么是人们对创建通用端点与特定端点的想法?

因此,一个特定的端点发送ThingCs(http://api.somename.com/ThingsCSender)。它向我发出了单一的责任,仔细考虑底层的实现不应该导致任何重复的功能。

(给出的例子不是在项目真正的概​​念或资源:P)

干杯

回答