HAL、JSONAPI、Collection+json、odata 其他超媒体的优缺点
Posted
技术标签:
【中文标题】HAL、JSONAPI、Collection+json、odata 其他超媒体的优缺点【英文标题】:HAL, JSONAPI, Collection+json, odata other hypermedia pro and cons 【发布时间】:2016-01-27 07:54:03 【问题描述】:有很多超媒体可用于一个 restful api。我不确定哪个适合哪种情况。这是我第一次尝试restful api,所以我无法预见使用它的问题和优势。我想要的是可以查询并且支持批处理(特别是 GET 请求)。
Odata 似乎功能完整,也是 oasis 标准,但对我来说似乎有点矫枉过正。它的查询能力灵活而复杂。更重要的是,没有任何 odata 4 的 php 实现。如果我使用它,我需要自己做。我现在正试图避免这种情况。
Hal 看起来太简单了,什么都做不了。
Collection+json 看起来不错。但是好像没有任何批量操作能力
jsonapi:看起来很简单。具有查询能力和批处理操作(带扩展名)。但它不支持 GET 请求的批量操作。它也处于稳定状态。但我还没有找到任何评论。
您对此有何经验?我应该如何选择其中的超媒体?任何见解都会有所帮助。我还想听听除此之外的任何其他超媒体。
目前我对 json-api 和 collection+json 感到困惑。
【问题讨论】:
【参考方案1】:Hal 看起来太简单了,什么都做不了。
它被世界上一些最大的公司用作许多不同生产 API 的基础,例如。亚马逊
【讨论】:
对不起,但它没有回答我的问题。我不明白为什么一个比另一个更好,以及如何选择它来解决任何特定的需求。 你的最终决定是什么?:) 我也有同样的问题。以上是关于HAL、JSONAPI、Collection+json、odata 其他超媒体的优缺点的主要内容,如果未能解决你的问题,请参考以下文章
如何使用DRUPAL 8中的RESTful Web服务API创建field_collection_item
node.js 和 mongodb:async 的 await collection.find 与 collection.find.exec