当前位置 : 主页 > 手机开发 > 其它 >

api – REST会破坏数据封装吗?

来源:互联网 收集:自由互联 发布时间:2021-06-19
我试图了解RESTful API的范围和限制.我的具体问题是:如何处理REST暴露操作而不是资源的API?我是否应该放弃暴露操作的诱惑并重新考虑API以暴露数据(资源).来自OOP,感觉就像公然违反对
我试图了解RESTful API的范围和限制.我的具体问题是:如何处理REST暴露操作而不是资源的API?我是否应该放弃暴露操作的诱惑并重新考虑API以暴露数据(资源).来自OOP,感觉就像公然违反对象封装.

想象一下,您需要公开一个进行汇款的REST API:将一个帐户的金额转移到另一个帐户.如果我理解REST,那么这两个帐户应该作为资源公开,并且必须在这两个资源上调用两个不同的UPDATE操作.对我来说,这感觉就像是明显违反了数据封装.我倾向于创建一个API来模拟操作“转移资金”而不是资源“帐户”.我可以创建一个执行“数据传输”的REST API吗?这不再是REST(因为它似乎不是以资源为中心).

对RPC调用看起来比REST更合适的场景有何评论?

谢谢

我认为转移本身就是一种资源,具有自己的生命周期.我们可以将转移资源(以商业术语)发起以启动转移.转移资源将参考账户资源;引用其他资源的资源是RESTful.

我们可以获取传输资源以确定其状态.

我们甚至可以对资源进行POST更新,例如,某些信息不完整.

网友评论