据我所知,在rest中,我们需要将每个模型保存在单独的请求中。如果我有3-4个级别的嵌套模型,并且希望在一个请求中将其全部保存,那么最佳实践是什么?(Rails、PHP、Node.js)
发布于 2018-08-24 18:40:53
REST实际上并不是在谈论模型,而是在谈论资源。
在REST服务中,“一些数据”(您的模型)由多个资源表示是很好的。
因此,如果您定义了一个新资源,将所有这些模型组合到一个更大的模型中,那么您也可以在那里提交一个PUT请求,并在一个请求中原子地更新所有内容。
但有一件事需要注意,那就是缓存。如果您严重依赖缓存,更新大资源不会自动使缓存中的所有子资源失效。据我所知,还没有标准的方法来告诉客户端应该从缓存中驱逐其他资源。这是2011年的草案,但它似乎被遗弃了:
https://datatracker.ietf.org/doc/html/draft-nottingham-linked-cache-inv-04
https://stackoverflow.com/questions/52000521
复制相似问题