据我所知,RESTful 约定是为POST创建一个资源来返回完整或带注释的创建实体,但是我的经验是,除非正在测试服务本身或客户端,否则通常会丢弃此实体.
在创建面向公众的API时,我不是REST的奴隶,特别是当我认为出于可用性或架构原因它没有意义时,但我总是想知道并且从未做过的一件事是204 No Content
从POST 返回创建新实体(特别是那些大尺寸的).这可以减少用户提出大量请求的带宽,并更快地做出回应.
这是一种可以接受的做法,还是会让你死在里面?请注意,出于测试原因,如果不提供端点来检索此实体,我不会考虑这一点.
编辑:我正在寻找轶事观察或具体的例子,说明为什么这个特定用例可能有害,即使它有详细记录.
您链接到的文档可以回答您提出的问题:
如果在源服务器上创建了资源,则响应应该是201(已创建)并包含描述请求状态的实体,并引用新资源和Location头(请参阅第14.30节).
除非响应包含适当的Cache-Control或Expires头字段,否则对此方法的响应不可缓存.但是,303(请参阅其他)响应可用于指示用户代理检索可缓存资源.