起初是因爲看到了一個視頻(BV17rT26jEM5),博主在360論壇反饋“極速瀏覽器X”彈出廣告的問題,卻被版主嘲諷:“極速X沒有廣告,少看豆包”
![]()
在第二天的澄清視頻(BV1axTR6bEzG)中,博主說明,在360工程師的協助下
已確認該廣告實際來自愛奇藝網站
![]()
那麼問題來了:瀏覽器都關了,網站爲什麼還能彈出廣告?
本文將以微軟 Edge瀏覽器 爲例,解析網站後臺推送廣告的原理
先來看一張演示圖:
在不打開 Edge 瀏覽器的情況下,依然能收到來自網站的通知

這種後臺通知技術叫做 Web Push,在2023年後獲得了各大瀏覽器的廣泛支持,不少同學可能還不太熟悉
具體流程如下:
網站首先會申請並獲得通知權限
![]()
隨後,網站向瀏覽器註冊一個後臺運行的腳本——Service Worker
![]()
Edge 瀏覽器收到網站的後臺推送請求後,
會向微軟服務器註冊訂閱消息,
並將當前用戶的訂閱地址返回給網站
![]()
獲得訂閱地址後,網站服務器 便可以在任意時間點告知微軟服務器“我要推送消息”
由微軟服務器轉發給 Edge
注意這裏說的網站服務器可以發起推送,而不是你所打開的網頁
網站服務器是24小時不間斷運行的
![]()
![]()
完全關閉edge瀏覽器能阻止推送麼?
不少人認爲,關閉瀏覽器後仍能收到推送,是因爲瀏覽器並沒有真正關閉,仍在後臺運行
![]()
其實不然
從第一張演示圖可以看到,當我完全關閉 Edge(沒有任何後臺進程)後,依然能收到推送通知
本文通篇以 Edge 瀏覽器爲例,不排除其他瀏覽器確實是依靠後臺進程實現推送

那究竟是誰在負責推送呢?
從事件管理器中可以看到,從接收消息、調用 Edge,到關閉 Edge,全部由 PushNotification-Platform 完成
![]()
也就是說,這項功能由 WpnService(Windows 推送消息系統服務)負責。只要關閉這個服務,所有通知都會被阻斷
![]()
![]()
現在,你已經完全瞭解網站後臺推送的實現機制
那麼以下幾個問題也就迎刃而解了:
廣告彈窗來自瀏覽器嗎
是,但具體來說,廣告是由網站發起。
瀏覽器只是負責顯示出來,廣告和瀏覽器沒有利益關係
怎麼讓愛奇藝等網站不推送廣告
關閉網站的通知權限即可
爲什麼油管、臉書網站的推送,在不爬梯的情況,依然能收到
本質上是這些應用商將推送信息提交給微軟,由微軟服務器推送給用戶。
因此,只要微軟服務器沒有異常,消息就一定能送達
本期分享就到這了,如果有下期,那我們就下期見
![]()
![]()
參考資料
Push API
htpps://developer.mozilla.org/zh-CN/docs/Web/API/Push_API
Re-engage users with push messages
https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps/how-to/push
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com
