カスタムプッシュ通知の作り方

王林
リリース: 2024-08-25 06:38:13
オリジナル
509 人が閲覧しました

How to make custom push notification

説明したようにカスタム プッシュ通知システムを構築するには、さまざまなテクノロジー、パッケージ、ライブラリが必要です。ここでは、クライアント側、サーバー側、一般的なツールに分けて、使用する技術スタックの包括的なリストを示します。

1.クライアント側 (フロントエンド)

これらは、ユーザーのブラウザで使用されるテクノロジーとライブラリです。

  • HTML/CSS/JavaScript:

    • Web サイトのフロントエンドを構築するための標準 Web テクノロジー。
  • サービスワーカー:

    • 目的: プッシュ通知の受信と表示などのバックグラウンド タスクを処理します。
    • ファイル:service-worker.js.
  • プッシュAPI:

    • 目的: Web アプリケーションがサーバーから送信されたプッシュ メッセージを受信できるようにします。
  • 通知API:

    • 目的: ユーザーに通知を表示します。
  • Web VAPID ライブラリ (オプション):

    • 目的: VAPID公開キーをBase64からUint8Arrayに変換するユーティリティ
    • パッケージ: 必要に応じて、独自のユーティリティ関数を作成することも、既存のライブラリを使用することもできます。

2.サーバーサイド (バックエンド)

これらは、サーバー上で実行され、サブスクリプションの管理、通知の送信などを行うテクノロジーとライブラリです。

  • Node.js:

    • 目的: バックエンドロジックを処理するためのサーバーサイド JavaScript ランタイム環境。
    • バージョン: 最新の LTS バージョンを推奨します。
  • Express.js:

    • 目的: サブスクリプションの処理、通知の送信などのための API エンドポイントを構築するための Node.js の Web アプリケーション フレームワーク
    • パッケージ: 特急
  • ウェブプッシュライブラリ:

    • 目的: VAPID キーの生成を含む、プッシュ通知の作成と送信を処理します。
    • パッケージ: ウェブプッシュ。
  • リーリー
  • データベース:

    • 目的: ユーザーのサブスクリプションを保存します。
    • オプション:
    • PostgreSQL: 強力なオープンソースのリレーショナル データベース
    • MySQL: もう 1 つの人気のあるリレーショナル データベースです。
    • SQLite: 軽量のサーバーレス データベース オプション。
    • ORM (オプション):
    • Sequelize: さまざまな SQL 言語をサポートする Node.js 用の ORM です。
    • パッケージ: Sequelize の続編。
  • ボディパーサーミドルウェア:

    • 目的: ハンドラーの前にミドルウェアで受信リクエストの本文を解析します。これは req.body プロパティで利用可能です。
    • パッケージ: ボディパーサー。
  • リーリー
  • ドテンフ:
    • 目的: .env ファイルから process.env に環境変数をロードします
    • パッケージ: dotenv.
  • リーリー

3.一般的なツールとユーティリティ

  • Nginx または Apache:

    • 目的: 静的ファイルを提供し、Node.js アプリケーションにリバース プロキシを提供する Web サーバー。
    • セットアップ: HTTPS 経由でサイトを提供するように構成します。これはプッシュ通知に必要です。
  • SSL証明書:

    • 目的: Service Worker とプッシュ通知に必要な HTTPS をドメインに提供します。
    • プロバイダー:
    • Let's Encrypt: 無料の SSL 証明書
    • 商用SSLプロバイダー: 有料オプションが利用可能です。
  • Git:

    • 目的: プロジェクトのバージョン管理
  • ノード パッケージ マネージャー (NPM) または Yarn:

    • 目的: Node.js パッケージとライブラリを管理します。

4.オプションのツール

  • モニタリングツール:

    • 目的: サーバーのパフォーマンスとエラーを監視します。
    • オプション:
    • ニューレリックデータドッグプロメテウス.
  • 自動導入ツール:

    • 目的: 自動デプロイメントのための CI/CD パイプライン。
    • オプション:
    • GitHub アクションジェンキンスGitLab CI.
  • データベース バックアップ ソリューション:

    • 目的: データベースのバックアップが定期的に作成されていることを確認します。

5.開発環境

  • コードエディタ:

    • オプション:
    • Visual Studio Code: JavaScript 開発に人気の選択肢です。
    • 崇高なテキストウェブストーム.
  • 郵便配達員または不眠症:

    • 目的: 開発中の API エンドポイントのテスト

まとめ

スタックは主にバックエンドのJavaScriptNode.js、およびExpressを中心に展開し、サブスクリプション データを保存するためのPostgreSQLMySQLなどのデータベースを備えます。Web-Pushライブラリは実際のプッシュ通知の送信を処理し、フロントエンドのService WorkerPush APIはサブスクリプション プロセスと通知の表示を管理します。

この設定により、通知システムを完全に制御できるようになり、ニーズに応じたカスタマイズと最適化が可能になります。

以上がカスタムプッシュ通知の作り方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!