簡體   English   中英

按客戶端過濾 web 通知

[英]Filter web notifications by client-side

當我向某個主題發送通知時,例如...

const message = {
  data: { cost: 49 },
  topic: 'apple'
}
admin.messaging().send(message)

如果用戶設置類似>= 50的內容,問題是關於防止/過濾通知 (Firestore/localStorage?)

我怎樣才能做到這一點?

我認為應該使用消息傳遞-sw.js過濾它,但是如何以及可能呢?

或者有什么更好的主意,或者我錯過了什么?

案例 1: 當您的應用程序在前台時

案例 2: 當您的應用程序在后台時

  • 將用戶的數據保存在IndexedDB中,因為用戶可以在 service worker 中訪問 IndexedDB 數據
  • 您必須自定義 firebase -messaging-sw.js文件中的 function setBackgroundMessageHandler作為處理用戶選項的指南
  • 注意:如果您在消息負載中設置通知字段,則不會調用您的 setBackgroundMessageHandler 回調,而是 SDK 根據您的負載顯示通知。

無論如何,在客戶端使用過濾器不是一個好方法,應該在服務器端完成

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM