protocol_handlers

實驗性: 這是一個 實驗性技術
在生產環境中使用此功能前,請仔細檢視 瀏覽器相容性表格

型別 陣列

protocol_handlers 成員指定一個物件的陣列,這些物件是此 Web 應用可以註冊和處理的協議。協議處理程式在作業系統的應用程式首選項中註冊應用程式;註冊將特定應用程式與給定的協議方案相關聯。例如,在網頁上使用 mailto:// 協議處理程式時,註冊的電子郵件應用程式將開啟。

註冊 Web 應用作為協議處理程式後,當用戶從瀏覽器或原生應用點選具有特定方案(如 mailto://web+music://)的超連結時,註冊的 PWA 將開啟並接收 URL。

示例

在此示例中,Web 應用清單宣告該應用應註冊以處理 web+jnglweb+jnglstore 協議。

JSON
"protocol_handlers": [
  {
    "protocol": "web+jngl",
    "url": "/lookup?type=%s"
  },
  {
    "protocol": "web+jnglstore",
    "url": "/shop?for=%s"
  }
]

開發人員可以在 manifest.json 中新增一個欄位來宣告 Web 應用可以處理哪些協議。如上例所示,鍵名為 protocol_handlers,它包含一個協議處理程式宣告物件的陣列。

註冊應用程式以處理 URL 方案取決於作業系統。此關聯通常在應用程式安裝期間完成,但也可以在已安裝的應用程式之後完成。

協議處理程式物件可能包含以下值

成員 描述
protocol 包含要處理的協議的必需字串;例如:mailtoms-wordweb+jngl
url 應用程式 作用域 內的必需 HTTPS URL,它將處理該協議。%s 令牌將被以協議處理程式方案開頭的 URL 替換。如果 url 是相對 URL,則基本 URL 將是清單的 URL。

規範

規範
清單孵化器
# protocol_handlers-member

瀏覽器相容性

BCD 表格僅在啟用 JavaScript 的瀏覽器中載入。