有人可以帮我理解ATOM Feed中“链接”标签的用途吗?
非常感谢有关此事的任何信息!
我在下面提供了一段代码示例。
<?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>
答案 0 :(得分:8)
Atom是一种联合格式,可以通过超媒体采用ReSTful通信的应用程序使用。它非常适合发布feed,它不仅适用于博客,还可以用于分布式应用程序(例如,用于将事件发布到系统的其他部分),以利用HTTP的优势(缓存,可伸缩性等)和使用REST的解耦。
Atom中的元素称为链接关系,可以向Feed的消费者表明一些事情:
rel="self"
通常表示当前元素(在您的情况下,Feed本身)代表实际资源,这是该资源的URI rel="via"
可以识别Feed中信息的原始来源或Feed中的条目rel="alternate"
指定指向同一资源(Feed或条目)的替代表示的链接rel="enclosure"
可能意味着链接到资源的目的是下载和缓存,因为它可能很大rel="related"
表示该链接以某种方式与当前Feed或条目相关rel
值通过以这种方式提供相关资源的链接,您可以解耦系统 - 系统需要知道的唯一URI是1个入口点,从那时起,其他操作通过这些链接关系提供给消费者。这些链接有效地告诉消费者,他们可以使用这些链接对其相关的条目采取操作或检索数据。
我可以为REST推荐一本关于Atom深入探讨的好书,由Jim Webber,Savas Parastatidis和Ian Robinson撰写REST in Practice。