2017-08-21 1 views
0

J'ai implémenté des notifications push à l'aide du service worker. Lorsque l'utilisateur clique sur la notification, je souhaite que la notification soit "lue" dans ma base de données. J'ai écrit un appel API pour marquer une notification comme "lu". Comment faire cet appel à partir du travailleur de service. Mon appel API est dans mon fichier js de l'application.Marquage des notifications push comme lues en effectuant une demande de post-traitement auprès du service worker

Répondre

1

J'ai trouvé la solution. Nous pouvons directement appeler notre API en utilisant l'événement "récupérer" du service worker. Et définir l'option "credentials" dans fetch comme "include", si vous souhaitez inclure les cookies dans la requête

fetch(url, { 
       method: 'post', 
       credentials: 'include', 
       body: JSON.stringify({"event_id": <event-id-value>}) 
       }) 
       .then(function (data) { 
       //console.log('Request succeeded with JSON response', data); 
       }) 
       .catch(function (error) { 
       //console.log('Request failed', error); 
       });