我正在尝试了解 RESTful API 的范围和限制。我的具体问题是:如何使用 REST 处理公开操作而不是资源的 API?我是否应该放弃暴露操作的诱惑,重新考虑 API 来暴露数据(资源)。来自 OOP,感觉像是对对象封装的公然违反。
想象一下,您需要公开一个 REST API 来进行汇款:将一笔金额从一个账户转移到另一个账户。如果我理解 REST,这两个帐户应该作为资源公开,并且必须对这两个资源调用两个不同的 UPDATE 操作。对我来说,这感觉像是对数据封装的明显违反。我的倾向是创建一个模拟“转账”操作而不是资源“帐户”的 API。我可以创建一个执行“数据传输”的 REST API 吗?那不再是 REST(因为它似乎不是以资源为中心的)。
对这种 RPC 调用看起来比 REST 更合适的场景有何评论?
谢谢