部分响应是非RESTful的

时间:2014-01-26 11:59:04

标签: rest ember.js

在讨论设计我们的REST api时,其中一位开发人员告诉我,部分响应不是RESTful。 例如在返回/ forums / {forum_id} / users的响应时,我只是返回用户名和头像pic。 当有人想要有关用户的详细信息时,我会发送{age,location,points_scored等}。 在尝试使用ember-data对此进行建模时,我们遇到了https://github.com/emberjs/data/issues/51中提到的问题。 那是开发人员指出部分响应是针对RESTful设计的。但我在任何REST书籍或互联网上都找不到任何此类信息。此外,我发现谷歌实际上在他们的RESTful API中使用了部分响应,并且有很多人使用它。

所以想知道部分响应(如上所述)确实不推荐用于RESTful服务或仅仅是设计选择问题。

1 个答案:

答案 0 :(得分:-1)

与常见的误解相反,REST并不强迫您读取和写入相同的资源。

CouchDB是一个非常好的例子。它处理:

  • “对象”(又名“文档”),可以创建读取更新已删除
  • 和“views”,根据文档计算,只能读取

在您的情况下,/forums/01a0/users将是“视图”,而/user/99a7将是“对象”。