ATOM-feeds中的"link"元素是什么?

Lar*_*rry 3 rss feeds atom-feed

有人可以帮我理解在ATOM提要中使用"链接"标签的内容吗?

  • 他们指向物理资源,还是像标识符一样?
  • 开头和每个"条目"块之间的链接URL有什么区别?
  • 是否必须拥有此linkURL?

任何有关这方面的信息将非常感谢!

我在下面提供了一个示例代码段.

<?xml version="1.0"?>
<atom:feed>

  <link rel="self" href="http://publisher.example.com/happycats.xml" />
  <updated>2008-08-11T02:15:01Z</updated>

  <!-- Example of a full entry. -->
  <entry>
    <title>Heathcliff</title>
    <link href="http://publisher.example.com/happycat25.xml" />
    <id>http://publisher.example.com/happycat25.xml</id>
    <updated>2008-08-11T02:15:01Z</updated>
    <content>
      What a happy cat. Full content goes here.
    </content>
  </entry>
Run Code Online (Sandbox Code Playgroud)

Dav*_*ett 8

Atom是一种联合格式,可以通过超媒体采用ReSTful通信的应用程序使用.它非常适合发布feed,它不仅适用于博客,还可以用于分布式应用程序(例如,用于将事件发布到系统的其他部分),以利用HTTP的优势(缓存,可伸缩性等)和使用REST的解耦.

Atom中的元素称为链接关系,可以向Feed的消费者指示以下内容:

  • rel="self" 通常表示当前元素(在您的情况下,Feed本身)表示实际资源,这是该资源的URI
  • rel="via" 可以识别Feed中信息的原始来源或Feed中的条目
  • rel="alternate" 指定指向同一资源(供稿或条目)的替代表示的链接
  • rel="enclosure" 可能意味着链接到资源的目的是下载和缓存,因为它可能很大
  • rel="related" 表示链接以某种方式与当前的订阅源或条目相关
  • ATOM的提供者还可以指定自己出现链接的原因,并提供自定义rel

通过以这种方式提供相关资源的链接,您可以解耦系统 - 系统需要知道的唯一URI是1个入口点,从那时起,通过这些链接关系向消费者提供其他操作.这些链接有效地告诉消费者,他们可以使用这些链接对其相关的条目采取操作或检索数据.

我可以为REST推荐的一本很好的书,深入介绍了Atom ,其中包括Jim Webber,Savas Parastatidis和Ian Robinson的REST in Practice.