我想使用带有超媒体约束的 REST API 来驱动我的 UI。也就是说,根据我获取的资源的“可能的下一个状态”,我想为此调整我的 UI。我对网络上的 UI 开发人员很陌生,所以我想知道这里是否有任何特殊的注意事项需要注意?
假设我有一个如下所示的资源:
{
href: "..",
orderDate: date..,
details: {
href : "..",
items: [..],
}
links: [
placeOrder : {
href : "...",
method : "post"
},
cancelOrder : {
href : "...",
method : "delete"
}]
}
上述链接方法在 HATEOAS 的上下文中是否有效?在一个完美的世界里,我想一个人应该只知道对资源进行操作的 HTTP 动词,但是如果我想让 UI 知道可以对资源做什么,我该如何以惯用的方式做到这一点?
我的意思是,同一种资源可以有不同的“下一个可能的状态”,具体取决于当前状态。UI 需要知道这一点。UI 是否应该检查资源上可用的链接,或者我该怎么做?