説明したようにカスタム プッシュ通知システムを構築するには、さまざまなテクノロジー、パッケージ、ライブラリが必要です。ここでは、クライアント側、サーバー側、一般的なツールに分けて、使用する技術スタックの包括的なリストを示します。
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.一般的なツールとユーティリティ
4.オプションのツール
モニタリングツール:
- 目的: サーバーのパフォーマンスとエラーを監視します。
- オプション:
- ニューレリック、データドッグ、プロメテウス.
自動導入ツール:
- 目的: 自動デプロイメントのための CI/CD パイプライン。
- オプション:
- GitHub アクション、ジェンキンス、GitLab CI.
データベース バックアップ ソリューション:
- 目的: データベースのバックアップが定期的に作成されていることを確認します。
5.開発環境
コードエディタ:
- オプション:
- Visual Studio Code: JavaScript 開発に人気の選択肢です。
- 崇高なテキスト、ウェブストーム.
郵便配達員または不眠症:
まとめ
スタックは主にバックエンドのJavaScript、Node.js、およびExpressを中心に展開し、サブスクリプション データを保存するためのPostgreSQLやMySQLなどのデータベースを備えます。Web-Pushライブラリは実際のプッシュ通知の送信を処理し、フロントエンドのService WorkerとPush APIはサブスクリプション プロセスと通知の表示を管理します。
この設定により、通知システムを完全に制御できるようになり、ニーズに応じたカスタマイズと最適化が可能になります。
以上がカスタムプッシュ通知の作り方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。