ブラウザでJavaScriptを使用するためのMomento Web SDK
Momentoは2つのJavaScript SDKを提供しています; 1つはNode.js用、もう1つはブラウザの他のWebアプリケーション用(このページ)です。2つのSDKは同じAPIを持っているので、import
ステートメントを除いてコードは同じように見えますが、異なるJavaScript実行環境において最適なパフォーマンスと互換性を保つように作られています。
Node.js SDKはサーバーサイドでの使用に最適です。しかし、Momento Web SDKでは、開発者はブラウザで実行され、Momentoサービスと直接通信するJavaScriptコードを記述することができます。これにより、ブラウザとMomento間のキャッシュやPub/Subコールを仲介するために、独自のウェブサービスを構築・運用する一般的なオーバーヘッドを回避することができます。また、ウェブトラフィックのホップが1つ減るので、ブラウザアプリケーションのパフォーマンスをさらに向上させることができます。両方の長所を兼ね備えています!
また、Node.js以外のJavaScript環境でもWeb SDKを使用できます。
Momento web SDKはnpmパッケージ@gomento/sdk-web
から利用できます。
ソースコードはGitHubにあります: momentohq/client-sdk-javascript。
必要条件
- MomentoのAPIキーが必要です。Momentoウェブコンソールから取得できます。
Resources
- Getting started with Momento Cache in JavaScript: このチート・シートはNode.js SDKを対象としていますが、Web SDK APIは完全に互換性があります。
- Getting started with Momento Topics in JavaScript: このチート・シートはNode.js SDKを対象としていますが、Web SDK APIは完全に互換性があります。
- Getting started with Momento Storage in JavaScript: このチート・シートはNode.js SDKを対象としていますが、Web SDK APIは完全に互換性があります。
- Chat app: Next.js: は、キャッシュとトピック名を入力することで、ユーザーがブラウザ上でチャットを行うことを可能にするダイナミック・アプリである。このアプリケーションは、トピックを購読するために使用されるブラウザに、スコープが低く寿命の 短い認証トークンを提供します。
- Chat app: Vite: チャットアプリの静的バージョンは、ブラウザに認証トークンを提供するために別のAPI(私たちのNode.jsトークン自動販売機など)を必要とします。
- Web SDK Examples: ウェブSDKの使い方を説明するサンプルプロジェクト
Momento web SDKとMomentoトピックス
Momento Topicsは、ブラウザでのパブリッシャーとサブスクライバーの通信を大幅に簡素化します。従来、この開発者の例は、ウェブサイトに組み込まれたチャット・アプリケーションです。ブラウザ用のクライアント・コードだけでなく、すべての通信をルーティングするためのサーバ・サイド・コードも構築することになります。
Momento Web SDKにMomento Topicsを組み込むことで、このサーバーサイドの複雑さが解消されます。開発者はブラウザから直接 Momento Topics を購読できます。そして、Momento は、トピックにメッセージが発行されたときのすべての通信を処理し、WebSocket 用のカスタムサーバーサイドインフラストラクチャを不要にします!