Firefox 中的網頁推送訊息

網頁推送訊息允許網站在有新訊息或是更新內容時通知使用者。當 Firefox 開啟時,被授予權限的網站能推送通知到瀏覽器並顯示在螢幕上。使用者可以輕鬆的啟用/停用通知,並且控制通知如何顯示。

新版的推送通知

自 Firefox 44 版起,即使網站沒有載入,也能顯示螢幕通知。Firefox 使用 W3C 標準 的 Push API,能在任何時候接收推送訊息及顯示通知(如果使用者有授權的話)。網站除了顯示推送通知外,亦可使用 Push API 在背景更新資料。如果您已經授予網站傳送通知的權限,網站就能使用 Push API。您可以照以下的步驟選擇是否要授予特定網站權限:

  1. 點一下 Site Info Button 圖示開啟控制中心
  2. 點一下提示視窗中的箭頭。
  3. 點一下 更多資訊 開啟頁面資訊視窗
  4. 點一下 權限 分頁。
  5. 接收通知 下,您可以選擇 總是詢問允許封鎖。如果選項被停用,請取消勾選「使用預設值」。

什麼是 Web Push ?

Web Push 對網站來說是非必要的功能,讓網站即使在沒載入時也能傳送訊息給您。網站能使用這個功能提供您推送通知或在背景更新資料。

舉例來說,您可以訂閱最愛的購物網站的推送通知,可以在有新的促消活動時通知您。您可以從不同網站訂閱推送通知。演唱會的網站能提供您最喜愛樂團的通知;若您允許網站通知的話,您會在一週後收到樂團巡迴的通知。

您只會收到來自授予權限網站的訊息。

原理是什麼?

網站可以安裝一個 Service Worker,這是一個只有部分功能,能訂閱推送服務的網頁。網站可以透過 Mozilla 的 Web Push 服務傳送推送訊息到您的瀏覽器,瀏覽器會處理這則訊息然後在螢幕上顯示這則通知。

push notification 44

點擊這則通知可以開啟這個網站或是切換到已載入此網站的分頁。

我分享了什麼資訊給網站?

被授權的網站可以在沒載入時推送訊息給您。除了在螢幕上的通知外,網站能推送通知的數量是有限額的。當網站達到限額時推送訊息會被停用,使用者必需重新造訪網站來重新訂閱。Web Push 不直接允許網站辨別您的 IP 位址。

Firefox 用了什麼資訊來提供 Web Push?

在 Firefox 開啟時,為了接收推送訊息,Firefox 會和推送服務間保持一個主動連線。當 Firefox 結束的同時,這個連線也結束。在我們的伺服器上,會為您的瀏覽器儲存一組亂數識別碼,以及每一個您授權的網站儲存一組亂數識別碼。

在桌面版 Firefox,推送服務是由 Mozilla 所營運。Android 版 Firefox 混合使用 Mozilla Web Push 服務和 Google 的 Cloud Messaging 平台來傳遞推送通知。

在以上兩種情形裡,推送訊息是按照 IETF spec 加密,而且只有您的 Firefox 可以解密。加密訊息會被儲存在伺服器上,直到被送出或是到期。

我要如何撤銷特定網頁推播通知的權限?

網頁推播通知可以讓使用者自行選擇是否新增。網站沒辦法在沒有您的允許的情況之下就向您推送訊息。若要讓特定網站停止推送訊息的話,請照下列步驟:

  1. 點擊選單按鈕 New Fx Menu 並選擇 選項偏好設定
  2. 在「隱私性與安全性」面板中,跳到「權限」一段。
  3. 點一下 選擇 按鈕「通知」旁的 設定 按鈕
  4. 選擇該網站。
  5. 點一下 移除網站
  1. 到 Firefox 選單 New Fx Menu 然後點選 選項偏好設定
  2. 選擇 內容 面板,並點擊在通知之下的 選擇 按鈕。
  3. 選擇網站。
  4. 點選 移除網站

若要讓所有網站停止發送訊息,請照著上述步驟,唯最後改成點選 移除所有網站。網站就無法再像你發送訊息,並且會在之後向你要求權限以便再次推送訊息。

在特定網頁上停用通知(需重新整理頁面):點一下 Site Info Button 圖示開啟控制中心,找到「接收通知」的權限後取消勾選「允許」來撤銷權限。

我要如何讓我的網站也能推播訊息?

Push API specification 解釋了如何建立一個 Service Worker 並推送訊息。

這篇文章有幫助嗎? 請稍候...

這些人們幫忙撰寫了這篇文章: Bor, wildsky, EricTsai。您也可以幫忙 - 看看要怎麼作