クライアントサイド レンダリング (CSR) は、最新の Web 開発における一般的な手法であり、インタラクティブで動的なアプリケーションの作成に使用されます。この手法を使用すると、ページをレンダリングする責任をサーバーから取り除き、ページをクライアント側に移し、サーバーにとって最も重要なこと、つまりビジネス ルールをサーバーに任せることができます。この分離により、より流動的で動的なユーザー エクスペリエンスを提供できるようになり、新しいタイプのアプリケーションの作成が可能になりました。利点は多様ですが、同時に、この手法を採用する価値があるかどうかをプロジェクトごとに評価する必要があるトレードオフもあります。
クライアント側レンダリング または単に CSR は、インターフェイスのレンダリングがクライアント側 (ブラウザー) で行われる動的アプリケーション開発手法です。これは、この手法が普及する以前の方法とは異なります。サーバーがページのレンダリングを担当し、すべてのコンテンツがすでに組み立てられた HTML ファイルをクライアントに返していました。
CSR では、ページをレンダリングする役割をブラウザ (クライアント) に渡します。サーバーは、JavaScript ファイルへのリンクを内部に含む基本的な HTML ファイルを送信するだけです。この HTML を受信すると、ブラウザーはページ コンテンツのレンダリングを担当する参照された Javascript ファイルをダウンロードします。 CRS の利点は、JavaScript ファイルがロードされると、サーバーへの新しいリクエストに依存せずにコンテンツを動的に更新できることです。ユーザーのブラウジング エクスペリエンスをよりスムーズにします。 CSR は通常、シングルページ アプリケーション (SPA) など、リアルタイムの対話や非常に動的なコンテンツが必要なアプリケーションで使用されます。 SEO を必要としない内部ページ、ダッシュボード、システム用のソリューションです。
クライアント側レンダリングを使用したレンダリング フローの例は次のようになります:
ユーザーは Web ページにアクセスし、内部的にサーバーにリクエストを送信します。
サーバーはリクエストを受信し、実質的に JavaScript と CSS ファイルへのリンクのみを含む基本的な HTML を送信して応答します。
ブラウザはこの HTML をダウンロードし、完了すると、HTML 内で参照されている JavaScript および CSS ファイルをダウンロードするための新しいリクエストを送信します。
JavaScript ファイルがダウンロードされると、それが実行され、ページのレンダリング処理が行われます。
この時点から、JavaScript はアプリケーション全体とユーザーの対話を制御し、サーバーへの新しいリクエストを行わずにページのコンテンツを動的に更新します。
この記事では、CSR の活用に関する主な重要なポイントを示し、基本とその利点と欠点を示します。 CSR フローを通じて、私たちは CSR ライフサイクルの主要な段階を把握します。完全にクライアント側で実行されるアプリケーションを提供する上で JavaScript が重要であることがわかります。 ユーザー エクスペリエンスに関連する CSR の利点にもかかわらず、このレンダリング手法には、高い JavaScript 負荷や SEO 関連の問題に関連するいくつかの欠点があることは明らかです。
CSR の制限を克服するために、静的サイト生成 (SSG) や サーバーサイド レンダリング (SSR) などのソリューションがあります。 SSG では、ビルド 期間中にページが静的に生成され、その結果、HTML がクライアントに配信される準備が整います。 SSR の場合、レンダリングはサーバー側で行われ、サーバー側はすでにレンダリングされた HTML でクライアントに応答します。
以上がクライアントサイド レンダリング (CSR)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。