比對模式是具有下列結構的網址,用於指定一組網址:
<scheme>://<host>/<path>
scheme:必須是下列其中一種,並使用雙斜線 (//
) 與模式的其他部分分隔:
http
https
- 萬用字元
*
,只會與http
或https
相符 file
如要進一步瞭解如何將內容指令碼插入不支援的配置,例如 about:
和 data:
,請參閱「在相關影格中插入」一文。
host:主機名稱 (www.example.com
)。主機名稱前方加上 *
,以便比對子網域 (*.example.com
),或是只加上萬用字元 *
。- 如果在主機模式中使用萬用字元,該字元必須是第一個或唯一的字元,且後面必須加上半形句號 (.
) 或正斜線 (/
)。
path:網址路徑 (/example
)。對於主機權限,路徑是必要的,但會遭到忽略。萬用字元 (/*
) 應依慣例使用。
擴充功能會在各種用途中使用比對模式,包括:
- 插入內容指令碼。
- 宣告主機權限:除了自身權限外,某些 Chrome API 也需要這項權限。
- 授予網路可存取資源的存取權。
- 使用 "externally_connectable.matches" 資訊清單鍵,允許傳送及接收訊息。
特殊情況
"<all_urls>"
- 會比對所有以允許的配置開頭的網址,包括「有效模式」下列出的任何模式。由於這會影響所有主機,因此使用這項功能的擴充功能可能需要較長的時間才能通過 Chrome 線上應用程式商店審查。
"file:///"
- 允許擴充功能在本機檔案上執行。這個模式需要使用者手動授予存取權。請注意,此範例需要三個斜線,而非兩個。
- 本機網址和 IP 位址
- 如要在開發期間比對任何 localhost 通訊埠,請使用
http://localhost/*
。如要指定 IP 位址,請在路徑中指定位址加上萬用字元,如http://127.0.0.1/*
。您也可以使用http://*:*/*
比對本機、IP 位址和任何通訊埠。 - 頂層網域比對模式
- Chrome 不支援頂層網域 (TLD) 的比對模式。在個別 TLD 中指定比對模式,例如
http://google.es/*
和http://google.fr/*
。
範例格式
https://*/*
或https://*/
- 比對使用
https
配置的任何網址。 https://*/foo*
- 比對任何主機上使用
https
通訊協定的所有網址,路徑必須以foo
開頭。例如https://example.com/foo/bar.html
和https://www.google.com/foo
。 https://*.google.com/foo*bar
- 比對使用
https
通訊協定且位於 google.com 主機的任何網址,路徑必須以foo
開頭並以bar
結尾。例如https://www.google.com/foo/baz/bar
和https://docs.google.com/foobar
。 file:///foo*
- 比對路徑以
foo
開頭的任何本機檔案。例如file:///foo/bar.html
和file:///foo
。 http://127.0.0.1/*
或http://127.0.0.1/
- 比對使用
http
配置且位於主機 127.0.0.1 的任何網址。例如http://127.0.0.1/
和http://127.0.0.1/foo/bar.html
。 http://localhost/*
- 比對任何 localhost 通訊埠。
*://mail.google.com/
或*://mail.google.com/*
- 比對所有以
http://mail.google.com
或https://mail.google.com
開頭的網址。