diff options
Diffstat (limited to 'files/ja/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html')
-rw-r--r-- | files/ja/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/files/ja/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html b/files/ja/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html new file mode 100644 index 0000000000..c7a2119c9b --- /dev/null +++ b/files/ja/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html @@ -0,0 +1,87 @@ +--- +title: protocol_handlers +slug: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers +tags: + - Add-ons + - Extensions + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers +--- +<div>{{AddonSidebar}}</div> + +<table class="fullwidth-table standard-table"> + <tbody> + <tr> + <th scope="row" style="width: 30%;">型</th> + <td><code>Array</code></td> + </tr> + <tr> + <th scope="row">必須</th> + <td>いいえ</td> + </tr> + <tr> + <th scope="row">例</th> + <td> + <pre class="brush: json no-line-numbers"> +"protocol_handlers": [ + { + "protocol": "ircs", + "name": "IRC Mozilla Extension", + "uriTemplate": "https://irccloud.mozilla.com/#!/%s" + } +]</pre> + </td> + </tr> + </tbody> +</table> + +<p>このキーを使ってウェブベースのプロトコルハンドラーを登録します。</p> + +<p>プロトコルハンドラーは特定の種類のリンクを扱う方法を知るアプリケーションです: 例えば、メールクライアントは "mailto:" リンクのプロトコルハンドラーです。ユーザーが "mailto:" リンクをクリックした時、ブラウザーは "mailto:" プロトコルのハンドラーが選んだアプリケーションを開きます (または設定によっては、ハンドラーの選択を与えます)。</p> + +<p>このキーでは、特定プロトコルのハンドラーとしてウェブサイトを登録できます。このキーの文法と意味は <code><a href="/ja/docs/Web/API/Navigator/registerProtocolHandler">Navigator.registerProtocolHandler()</a></code> 関数によく似ていて、その違いは <code>registerProtocolHandler()</code> だけはウェブサイト自身をハンドラーに登録できることです。</p> + +<p>プロトコルハンドラーは 3 つのプロパティを持ち、すべて必須です:</p> + +<dl> + <dt><code>protocol</code></dt> + <dd> + <p>プロトコルを定義する文字列。次のいずれか:</p> + + <ul> + <li>次のどれか: "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".</li> + <li>"web+" や "ext+"で始まるカスタム名からなる文字列。例えば: "web+foo" や "ext+foo"。カスタム名は小文字の ASCII 文字列でなければならない。拡張機能は "ext+" の形式を使うのが推奨です。</li> + </ul> + </dd> + <dt><code>name</code></dt> + <dd>プロトコルハンドラーを表す文字列。これはユーザーがハンドラーにリンクを開くかどうか問い合わせた時に、ユーザーに表示されます。</dd> + <dt><code>uriTemplate</code></dt> + <dd>ハンドラーの URL を表す。この文字列はプレースホルダーとして "%s" を入れる必要があります: これは処理される文書の URL がエスケープされたもので置き換えられます。この URL は本当の URL や電話番号、電子メールアドレス、などです。これは<a href="https://developer.mozilla.org/ja/Add-ons/WebExtensions/Internationalization#Internationalizing_manifest.json">ローカライズ可能なプロパティ</a>です。</dd> +</dl> + +<h2 id="Example" name="Example">例</h2> + +<pre class="brush: json no-line-numbers">"protocol_handlers": [ + { + "protocol": "magnet", + "name": "Magnet Extension", + "uriTemplate": "https://example.com/#!/%s" + } +]</pre> + +<p>ハンドラーは<a href="/ja/docs/Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages">拡張機能ページ</a>のこともあります。</p> + +<pre class="brush: json no-line-numbers">"protocol_handlers": [ + { + "protocol": "magnet", + "name": "Magnet Extension", + "uriTemplate": "/example.xhtml#!/%s" + } +]</pre> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザー実装状況</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.manifest.protocol_handlers")}}</p> |