一致パターン

ホスト権限コンテンツ スクリプトのマッチングは、一致パターンで定義される一連の URL に基づきます。一致パターンは、許可されたスキーム(httphttpsfileftp)で始まり、* 文字を含むことができる URL です。特殊なパターン <all_urls> は、許可されたスキームで始まるすべての URL に一致します。各一致パターンには次の 3 つの部分があります。

  • scheme - httpfile* など

    注: file URL へのアクセスは自動ではありません。ユーザーは、拡張機能の管理ページにアクセスし、リクエストしている拡張機能ごとに file へのアクセスを有効にする必要があります。
  • host - www.google.com*.google.com* など。スキームが file の場合、host 部分はありません。

  • path - 例: /*/foo*/foo/bar。パスはホスト権限に存在する必要がありますが、常に /* として扱われます。

基本的な構文は次のとおりです。

&lt;url-pattern&gt; := &lt;scheme&gt;://&lt;host&gt;&lt;path&gt;
&lt;scheme&gt; := '*' | 'http' | 'https' | 'file' | 'ftp' | 'urn'
&lt;host&gt; := '*' | '*.' &lt;any char except '/' and '*'&gt;+
&lt;path&gt; := '/' &lt;any chars&gt;

*」の意味は、スキームホストパスのどの部分にあるかによって異なります。スキーム* の場合、http または https のいずれかに一致し、fileftpurn には一致しません。ホスト* のみの場合は、任意のホストに一致します。ホスト*._hostname_ の場合、指定されたホストまたはそのサブドメインのいずれかに一致します。path セクションでは、各「*」は 0 個以上の文字に一致します。次の表に、有効なパターンをいくつか示します。

パターン機能一致する URL の例
http://*/*http スキームを使用する URL に一致します。http://www.google.com/
http://example.org/foo/bar.html
http://*/foo*パスが /foo で始まれば、いかなるホスト上でも、http スキームを使用するすべての URL に一致します。http://example.com/foo/bar.html
http://www.google.com/foo
https://*.google.com/foo*barパスが /foo で始まり、bar で終わる場合に、https スキームを使用し、google.com ホスト(www.google.com、docs.google.com、google.com など)にある URL に一致します。https://www.google.com/foo/baz/bar
https://docs.google.com/foobar
http://example.org/foo/bar.html指定された URL に一致しますhttp://example.org/foo/bar.html
file:///foo*パスが /foo で始まるローカル ファイルに一致します。file:///foo/bar.html
file:///foo
http://127.0.0.1/*http スキームを使用し、ホスト 127.0.0.1 にあるすべての URL に一致します。http://127.0.0.1/
http://127.0.0.1/foo/bar.html
*://mail.google.com/*http://mail.google.com または https://mail.google.com で始まる URL に一致します。http://mail.google.com/foo/baz/bar
https://mail.google.com/foobar
urn:*urn: で始まる URL に一致します。urn:uuid:54723bea-c94e-480e-80c8-a69846c3f582
urn:uuid:cfa40aff-07df-45b2-9f95-e023bcf4a6da
<all_urls>許可されたスキームを使用する URL に一致します。(許可されているスキームのリストについては、このセクションの冒頭をご覧ください)。http://example.org/foo/bar.html
file:///bar/baz.html

無効なパターン一致の例を次に示します。

悪い柄問題点
http://www.google.comパスなし
http://*foo/barホストの「*」の後には「.」または「/」のみを続けることができます。
http://foo.*.bar/baz ホストに「*」が含まれている場合は、最初の文字である必要があります。
http:/barスキームの区切り文字がありません(「/」は「//」である必要があります)
foo://*無効なスキーム

一部のスキームは、すべてのコンテキストでサポートされているわけではありません。