我有一些旧代码在 Web API 上公开服务,该 API 基本上适用于 HTTP 动词。我想移动这个项目以使用超媒体控件(HATEOAS)。我想知道是否有任何库已经支持根据 HAL 或 JSON-LD 规范在子资源的资源表示中嵌入链接。我用谷歌搜索,但我找不到任何东西。很高兴知道 Yesod、Snap 或 Happstack 等成熟项目之一是否计划支持此功能?
编辑:澄清一下,我对REST 成熟度模型的第 3 级感兴趣
json-api 包声称为 HATEOS 提供一些支持 。这是此示例代码的输出, 演示了如何生成 HATEOS/HAL 样式响应。
你以前见过HAL吗?它是超媒体对象的规范格式。该规范的 github wiki 有一个库列表,但我在那里看不到任何 haskell 库。
然而,一个快速的谷歌出现了https://github.com/talios/haskell-hal。看起来不是很受欢迎,但也许在阅读了有关 HAL 的内容后,您会做出贡献、分叉或发布自己的内容!