为了遵守REST原则(HATEOAS)和HAL(specification, Internet-draft),如何响应一组链接?
在JSON主体的第一级没有属性并且只有带有自身链接的_links部分和带有为该特定请求找到的链接的_embedded部分是否可以?
更新:示例
请求: http://localhost:5555/myservice/titles/meow/kittens
返回:
{
"_links": {
"next": {
"href": "/myservice/titles/meow/kittens?page=2"
},
"self": {
"href": "/myservice/titles/meow/kittens"
},
"anchestor": {
"href": "/myservice/titles/meow"
}
},
"_embedded": {
"linksINeed": [
{
"title": "kitten play",
"_links": {
"self": {
"href": "/myservice/titles/kitten-play"
}
}
},
...
{
"title": "kitten eat",
"_links": {
"self": {
"href": "/myservice/titles/kitten-eat"
}
}
}
]
}
}
这是否有效 REST ful HAL JSON? 感谢
答案 0 :(得分:-1)
返回具有0个属性的资源时的空JSON主体?听起来有点像你可以完全没有这个资源。如果没有可以唯一标识该资源的属性,那么自我链接会包含什么?即使您拥有属性但不会实例化它们,这也行不通。
如果它是根,你至少可以拥有类似具有VersionNumber属性的ApiVersion资源。
否则我想在更奇特的场景中可能是可行的,例如删除资源并仍然提供到另一个(它的前父级?)的链接,尽管这可能只是一个HttpStatusCode 204 No Content。