所以我一直在尝试理解WebFinger (RFC7033) 并偶然发现了Web Host Metadata (RFC6415)。据我所知,它们都是 RFC,并且以几乎相同的方式解决相同的问题。
因此,如果我想通过 URI 查找有关人或物的信息,我可以做两件事:
/.well-known/webfinger?resource=.../.well-known/host-meta返回 JRD 或 XRD 的内容,例如<link rel="lrdd" template="http://example.com/lrdd?uri={uri}">Webfinger 只是少了一次查找并鼓励 JRD。为什么我不能只创建一个host-meta看起来像http://example.com/.well-known/webfinger?resource={uri}并且做这两件事(尽管是多余的)的模板?
我所缺少的两者之间有什么重要的区别吗?我应该选择其中之一而不是另一种吗?
小智 6
RFC 7033 的作者在这里。
WebFinger 已经开发了好几年,并在此期间经历了许多变化。RFC 6415 是标准化 WebFinger 概念的第一次尝试,其中包括主机元和 LRDD。使用 RFC 6415 的发现过程很复杂,因为需要执行两个查询,然后合并每个查询的信息以创建一组链接关系结果。此外,一段时间以来人们一直在转向 JSON。WebFinger 曾使用 XML,但 RFC 6415 附录 A 引入了 JSON 编码。人们希望这是唯一的编码。
我们 IETF 中的一组人与 RFC 6415 的原作者和 WebFinger 社区的其他人合作,致力于简化流程,转而使用 JSON 作为内容编码,确保解决方案是安全的(仅限 HTTPS),并获得就用于查询用户帐户信息的 URI 方案(“acct”URI)达成一致。
因此,通过 RFC 7033,我们拥有一种安全、简单、单查询的发现机制,其工作原理基本如下:
$ wfinger paulej@packetizer.com
Run Code Online (Sandbox Code Playgroud)
这个“wfinger”客户端要做的是找到域“packetizer.com”,然后发出以下查询(使用curl只是为了使示例清晰):
$ curl https://packetizer.com/.well-known/webfinger?resource=acct%3Apaulej%40packetizer.com
Run Code Online (Sandbox Code Playgroud)
请注意,任何 URI 方案仍可与 WebFinger 一起使用——这一概念并未丢失。因此,正如原始 WebFinger 的预期,可以查询有关网页(例如 www.packetizer.com)或其他类型内容的信息。这是一个例子:
$ curl https://packetizer.com/.well-known/webfinger?resource=http%3A%2F%2Fwww.packetizer.com
Run Code Online (Sandbox Code Playgroud)
这将返回有关页面“ http://www.packetizer.com ”的链接关系和其他元数据。
| 归档时间: |
|
| 查看次数: |
393 次 |
| 最近记录: |