fedify 本島・一の門

webfinger の門

ja· en· ko
はじめての人へ「@名前@どこの島」という宛名から、その人のほんとうの住所(URL)を調べる電話帳です。

宛名ひとつで、宇宙じゅうの誰でも見つけられます。「@friend@mastodon.social」と書けば、相手がどのサーバに住んでいても、あなたのアプリはほんとうの住所(URL)を引けます。自分で作るなら lookupWebFinger() を一回呼ぶだけ——電話帳の仕組みそのものは、覚えなくてもだいじょうぶ。

この包みは「訪ねる側」の半分だけです。訪ねられたときに /.well-known/webfinger で答える側は、本堂に住んでいます。門は、外へ出ていく人のためのもの。

見どころ

  • 全体で1400行ほど。島でいちばん小さな包みのひとつ
  • 公開玄関は lookupWebFinger()(lookup.ts)ただ一つ。LookupWebFingerOptionsで振る舞いを調整
  • jrd.ts の ResourceDescriptor と Link が、WebFingerの返す札の形そのもの

経文の一節

export interface ResourceDescriptor {
  subject?: string;
  aliases?: string[];
  properties?: Record<string, string | null>;
  links?: Link[];
packages/webfinger/src/jrd.ts L5-L9— 門で受け取る札の形

さわってみる

宛名を入れて「しらべる」——ほんものの電話帳を引きます。

間取り

packages/webfinger/src/lookup.ts
lookupWebFinger()クライアント
packages/webfinger/src/jrd.ts
JRDの型: ResourceDescriptorとLink

となりの部屋

そとへのリンク