当使用JSON资源构建RESTful /超级媒体API时,我似乎有两个选项来指定资源之间的超媒体关系。
因此,特别是在处理JSON资源的上下文中,这是要走的路,为什么呢?
发布于 2012-03-16 18:54:07
使用超媒体JSON格式。虽然Link是标准的,但是它们没有得到很好的采用。对于不属于超媒体的媒体格式,它们确实更有效。但是,由于您有选择并且可以选择超媒体格式(比如,PNG与JPG不同),所以您应该选择一种并继续前进。
所有的JSON标准都在冒泡,直到一个或另一个成为“事实上的”标准。他们被使用得越多,他们得到的“事实”就越多。
在我看来,HAL是在一个坚实的标准轨道上,我会选择。
但无论哪种方式,都要采用超媒体格式,因为你可以。
发布于 2012-03-16 22:54:27
如果您希望由HTTP中介体处理您的链接,那么一定要使用Link。其中一个例子是链接缓存失效:
https://datatracker.ietf.org/doc/html/draft-nottingham-linked-cache-inv-01
如果您只想向客户端公开链接,最好将它们放在实体中,以便利用嵌套元素中的链接:
{
'item': [
{ 'name': 'fork', 'href': 'http://example.com/item/1' },
{ 'name': 'spoon', 'href': 'http://example.com/item/2' },
{ 'name': 'spork', 'href': 'http://example.com/item/3' }
],
'href': 'http://example.com/items'
}发布于 2012-03-16 18:50:01
你不能压缩头文件。如果你有很多链接。这可能会有不同。
为链接提供上下文。链接头具有锚点属性,但是没有标准化的片段路径语法,因此YMMV。
从我的头顶上,我想不出任何其他的利弊。
https://stackoverflow.com/questions/9742380
复制相似问题