Maison> interface Web> js tutoriel> le corps du texte

Comment créer une notification push personnalisée

王林
Libérer: 2024-08-25 06:38:13
original
509 Les gens l'ont consulté

How to make custom push notification

Pour créer un système de notification push personnalisé comme décrit, vous aurez besoin d'une variété de technologies, de packages et de bibliothèques. Voici une liste complète de la pile technologique que vous utiliserez, divisée en outils côté client, côté serveur et généraux.

1. Côté client (frontend)

Ce sont les technologies et bibliothèques utilisées dans le navigateur de l'utilisateur.

  • HTML/CSS/JavaScript:

    • Technologies Web standard pour créer le frontend de votre site Web.
  • Travailleur de service:

    • Objectif: Gère les tâches en arrière-plan, notamment la réception et l'affichage des notifications push.
    • Fichier: service-worker.js.
  • API Push:

    • Objectif: Permet à l'application Web de recevoir des messages push envoyés depuis le serveur.
  • API de notifications:

    • Objectif: affiche les notifications à l'utilisateur.
  • Bibliothèque Web VAPID (facultatif):

    • Objectif: Utilitaire pour convertir la clé publique VAPID de Base64 en Uint8Array.
    • Package: Vous pouvez écrire votre propre fonction utilitaire ou utiliser une bibliothèque existante si nécessaire.

2. Côté serveur (backend)

Ce sont les technologies et les bibliothèques qui s'exécutent sur votre serveur, gèrent les abonnements, envoient des notifications, etc.

  • Node.js:

    • Objectif: environnement d'exécution JavaScript côté serveur pour gérer la logique backend.
    • Version: la dernière version LTS est recommandée.
  • Express.js:

    • Objectif: Un framework d'application Web pour Node.js pour créer vos points de terminaison d'API pour gérer les abonnements, envoyer des notifications, etc.
    • Colis: express.
  • Bibliothèque Web-Push:

    • Objectif: Gère la création et l'envoi de notifications push, y compris la génération de clés VAPID.
    • Package: web-push.
npm install web-push --save
Copier après la connexion
  • Base de données:

    • Objectif: stocker les abonnements des utilisateurs.
    • Options:
    • PostgreSQL: une base de données relationnelle puissante et open source.
    • MySQL: Une autre base de données relationnelle populaire.
    • SQLite: une option de base de données légère et sans serveur.
    • ORM (Facultatif):
    • Sequelize: Un ORM pour Node.js qui prend en charge divers dialectes SQL.
    • Package: sequelize pour Sequelize.
  • Middleware Body-Parser:

    • Objectif: analyser les corps des requêtes entrantes dans le middleware avant vos gestionnaires, disponibles sous la propriété req.body.
    • Package: analyseur de corps.
npm install body-parser --save
Copier après la connexion
  • Dotenv:
    • Objectif: Charger les variables d'environnement d'un fichier .env dans process.env.
    • Package: dotenv.
npm install dotenv --save
Copier après la connexion

3. Outils et utilitaires généraux

  • Nginx ou Apache:

    • Objectif: serveur Web pour servir vos fichiers statiques et proxy inverse pour votre application Node.js.
    • Configuration: configurez pour servir votre site via HTTPS, ce qui est requis pour les notifications push.
  • Certificat SSL:

    • Objectif: Fournit HTTPS pour votre domaine, nécessaire pour les techniciens de service et les notifications push.
    • Fournisseur:
    • Let's Encrypt: certificats SSL gratuits.
    • Fournisseurs SSL commerciaux: options payantes disponibles.
  • Git:

    • Objectif: Contrôle de version pour votre projet.
  • Node Package Manager (NPM) ou Yarn:

    • Objectif: Gère les packages et les bibliothèques Node.js.

4. Outils optionnels

  • Outils de surveillance:

    • Objectif: Surveiller les performances et les erreurs du serveur.
    • Options:
    • Nouvelle relique,Datadog,Prométhée.
  • Outils de déploiement automatisés:

    • Objectif: pipelines CI/CD pour un déploiement automatisé.
    • Options:
    • Actions GitHub,Jenkins,GitLab CI.
  • Solutions de sauvegarde de bases de données:

    • Objectif: Assurer que les sauvegardes de la base de données sont effectuées régulièrement.

5. Environnement de développement

  • Éditeur de code:

    • Options:
    • Visual Studio Code: choix populaire pour le développement JavaScript.
    • Texte sublime,WebStorm.
  • Facteur ou Insomnie:

    • Objectif: tester les points de terminaison de l'API pendant le développement.

Résumé

Votre pile tournera principalement autour deJavaScript,Node.jsetExpresssur le backend, avec une base de données commePostgreSQLouMySQLpour stocker les données d'abonnement. La bibliothèqueWeb-Pushgérera l'envoi réel des notifications push, et leService Workeret l'Push APIsur le frontend géreront le processus d'abonnement et l'affichage des notifications.

Cette configuration vous donne un contrôle complet sur le système de notification, permettant une personnalisation et une optimisation en fonction de vos besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!