首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RESTful JSON的链接头与链接元素

RESTful JSON的链接头与链接元素
EN

Stack Overflow用户
提问于 2012-03-16 18:07:57
回答 4查看 9.1K关注 0票数 27

当使用JSON资源构建RESTful /超级媒体API时,我似乎有两个选项来指定资源之间的超媒体关系。

  1. 将链接嵌入到JSON文档的正文中。这里的问题是没有一个标准的语法来指定超链接,尽管我看到了一些很好的努力:(哈尔、Collection+JSON、JSON、JSON等等)。
  2. 使用HTTP头。这是一个标准化的,所以这似乎有一个优势的嵌入式链接。客户端只知道如何理解标准的标头和超媒体的优点。

因此,特别是在处理JSON资源的上下文中,这是要走的路,为什么呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-16 18:54:07

使用超媒体JSON格式。虽然Link是标准的,但是它们没有得到很好的采用。对于不属于超媒体的媒体格式,它们确实更有效。但是,由于您有选择并且可以选择超媒体格式(比如,PNG与JPG不同),所以您应该选择一种并继续前进。

所有的JSON标准都在冒泡,直到一个或另一个成为“事实上的”标准。他们被使用得越多,他们得到的“事实”就越多。

在我看来,HAL是在一个坚实的标准轨道上,我会选择。

但无论哪种方式,都要采用超媒体格式,因为你可以。

票数 14
EN

Stack Overflow用户

发布于 2012-03-16 22:54:27

如果您希望由HTTP中介体处理您的链接,那么一定要使用Link。其中一个例子是链接缓存失效:

https://datatracker.ietf.org/doc/html/draft-nottingham-linked-cache-inv-01

如果您只想向客户端公开链接,最好将它们放在实体中,以便利用嵌套元素中的链接:

代码语言:javascript
运行
复制
{
    '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'
}
票数 10
EN

Stack Overflow用户

发布于 2012-03-16 18:50:01

你不能压缩头文件。如果你有很多链接。这可能会有不同。

为链接提供上下文。链接头具有锚点属性,但是没有标准化的片段路径语法,因此YMMV。

从我的头顶上,我想不出任何其他的利弊。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9742380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档