Mik*_*aki 7 rest json web-services hateoas web
假设我有一系列书籍,我们称之为图书馆.GET domain.com/library应该以符合HAL标准的JSON返回库中的书籍列表.我该如何格式化JSON?我怎么能嵌入书籍资源?这是我目前正在考虑的格式:
{
"books": [
{
"name": "Fight Club",
"_links": {
"self": {
"href": "domain.com/library/Fight-Club"
},
},
...
},
....
],
"_links" : {
"search": {
"href": "domain.com/library/search"
},
...
},
"_embedded" : {
"Fight Club": {
"author": "Chuck Palahniuk",
...
[Same links as above]
}
}
}
Run Code Online (Sandbox Code Playgroud)
Eri*_*ric 12
在编写HAL规范时,该_embedded
对象旨在用于给定资源的子资源.所以你的骨架HAL JSON看起来像这样.
{
"_links": {
"self": {
"href": "/library"
}
},
"_embedded": {
"item": [{
"_links": {
"self": {
"href": "/library/Fight-Club"
}
},
"author": "Chuck Palahniuk",
"title": "Fight Club"
}]
}
}
Run Code Online (Sandbox Code Playgroud)
_embedded
对象的直接属性是链接关系.该item
关系是一个标准的关系,这意味着资源是属于上下文资源的项目(在这种情况下,你的库).您可以使用CURIE创建自定义链接关系.
请注意books
顶级对象中缺少数组.如果您愿意,可以包括它,但这只是一种便利.HAL库只会知道你放入的内容_links
和_embedded
.请参阅此讨论,了解HAL中的集合以及决定数据放置位置的人为因素.
归档时间: |
|
查看次数: |
3049 次 |
最近记录: |