Array
必須 いいえ
"protocol_handlers": [
  {
    "protocol": "ircs",
    "name": "IRC Mozilla Extension",
    "uriTemplate": "https://irccloud.mozilla.com/#!/%s"
  }
]

このキーを使ってウェブベースのプロトコルハンドラーを登録します。

プロトコルハンドラーは特定の種類のリンクを扱う方法を知るアプリケーションです: 例えば、メールクライアントは "mailto:" リンクのプロトコルハンドラーです。ユーザーが "mailto:" リンクをクリックした時、ブラウザーは "mailto:" プロトコルのハンドラーが選んだアプリケーションを開きます (または設定によっては、ハンドラーの選択を与えます)。

このキーでは、特定プロトコルのハンドラーとしてウェブサイトを登録できます。このキーの文法と意味は Navigator.registerProtocolHandler() 関数によく似ていて、その違いは registerProtocolHandler() だけはウェブサイト自身をハンドラーに登録できることです。

プロトコルハンドラーは 3 つのプロパティを持ち、すべて必須です:

protocol

プロトコルを定義する文字列。次のいずれか:

  • 次のどれか: "bitcoin", "dat", "dweb", "geo", "gopher", "im", "ipfs", "ipns", "irc", "ircs", "magnet", "mailto", "mms", "news", "nntp", "sip", "sms", "smsto", "ssb", "ssh", "tel", "urn", "webcal", "wtai", "xmpp".
  • "web+" や "ext+"で始まるカスタム名からなる文字列。例えば: "web+foo" や "ext+foo"。カスタム名は小文字の ASCII 文字列でなければならない。拡張機能は "ext+" の形式を使うのが推奨です。
name
プロトコルハンドラーを表す文字列。これはユーザーがハンドラーにリンクを開くかどうか問い合わせた時に、ユーザーに表示されます。
uriTemplate
ハンドラーの URL を表す。この文字列はプレースホルダーとして "%s" を入れる必要があります: これは処理される文書の URL がエスケープされたもので置き換えられます。この URL は本当の URL や電話番号、電子メールアドレス、などです。これはローカライズ可能なプロパティです。

"protocol_handlers": [
  {
    "protocol": "magnet",
    "name": "Magnet Extension",
    "uriTemplate": "https://example.com/#!/%s"
  }
]

ハンドラーは拡張機能ページのこともあります。

"protocol_handlers": [
  {
    "protocol": "magnet",
    "name": "Magnet Extension",
    "uriTemplate": "/example.xhtml#!/%s"
  }
]

ブラウザー実装状況

ChromeEdgeFirefoxFirefox for AndroidOpera
基本対応 なし なし5454 なし
dat なし なし5959 なし
dweb なし なし5959 なし
gopher なし なし5656 なし
ipfs なし なし5959 なし
ipns なし なし5959 なし
ssb なし なし5959 なし

ドキュメントのタグと貢献者

このページの貢献者: Uemmra3
最終更新者: Uemmra3,