Ana içeriğe geç

CSR

İstemci Tarafı Render

Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/csr

Kısaca

CSR, tarayıcının çoğunlukla boş bir HTML sayfası ile JavaScript indirip sayfa içeriğini kullanıcının cihazında oluşturduğu render yaklaşımıdır.

CSR nedir?

İstemci tarafı render'da (client-side rendering) sunucu, bir JavaScript paketiyle birlikte çoğu zaman boş bir <div id="root"></div>'den biraz fazlası olan asgari bir HTML dosyası gönderir. Tarayıcı bu JavaScript'i indirip çalıştırır; JavaScript bir API'den veri çeker ve DOM'u doğrudan kullanıcının cihazında oluşturarak sayfa içeriğini üretir.

CSR, tek sayfalı uygulamaların klasik çalışma biçimidir. İlk yüklemeden sonra ağ üzerinden yalnızca veri taşındığı için gezinme hızlıdır ve sunucu basit bir statik dosya barındırıcısı ya da CDN olabilir. Bu da CSR'ı panolar, editörler ve yönetim panelleri gibi oturum arkasındaki yüksek etkileşimli uygulamalar için uygun kılar.

Başlıca dezavantajı ilk yüklemedir. JavaScript inip çalışana kadar kullanıcılar boş bir ekran ya da bir yükleme göstergesi görür; bu, özellikle düşük donanımlı telefonlarda ve kötü ağlarda yavaştır. JavaScript çalıştırmayan tarayıcılar (crawler), aralarında birçok yapay zekâ tarayıcısı da olmak üzere, yalnızca boş kabuğu görebilir ve bu SEO'ya zarar verir.

CSR, SSR ve SSG arasındaki fark esas olarak HTML'in nerede ve ne zaman üretildiğidir. CSR'da sayfa görüntülenirken tarayıcıda, SSR'da her istek için sunucuda, SSG'de ise önceden bir derleme makinesinde üretilir. Birçok modern site üçünü de karıştırır; örneğin statik tanıtım sayfaları, sunucuda render edilen ürün sayfaları ve istemcide render edilen bir hesap panosu gibi.

Önemli noktalar

  • CSR, sayfayı tarayıcıda JavaScript ile oluşturur.
  • Sunucu asgari bir HTML kabuğu ve bir betik paketi gönderir.
  • İlk yüklemeden sonraki gezinme hızlıdır ve yalnızca veri gerektirir.
  • İlk yükleme daha yavaştır ve JavaScript çalıştırmayan tarayıcılar çok az içerik görür.
  • CSR tarayıcıda, SSR istek başına sunucuda, SSG ise derleme zamanında render eder.

Örnek

Tümüyle tarayıcıda render edilen bir sayfahtml
<!-- What the server sends: an empty shell and a script -->
<body>
  <ul id="app">Loading...</ul>
  <script type="module">
    // The browser fetches data and builds the content itself
    const res = await fetch("/api/products");
    const products = await res.json();
    const items = products.map((p) => {
      const li = document.createElement("li");
      li.textContent = p.name;
      return li;
    });
    document.querySelector("#app").replaceChildren(...items);
  </script>
</body>

Sık sorulan sorular

CSR ile SSR arasındaki fark nedir?

CSR'da tarayıcı neredeyse boş bir sayfa alır ve içeriği JavaScript ile oluşturur. SSR'da ise sunucu her istek için hazır HTML gönderir; içerik daha erken görünür ve tarayıcılar betik çalıştırmadan okuyabilir.

İstemci tarafı render SEO için kötü müdür?

Olabilir. Google JavaScript'i render edebilir ama dizine ekleme gecikebilir; yapay zekâ tarayıcıları dahil birçok diğer tarayıcı ise yalnızca ilk HTML'i okur. Aramada üst sıralara çıkması gereken sayfalar genellikle bunun yerine SSR ya da SSG ile render edilir.

İstemci tarafı render'ı ne zaman kullanmalıyım?

CSR, arama sonuçlarında görünmesi gerekmeyen, yüksek etkileşimli sayfalara (panolar, yönetim panelleri ve oturum arkasındaki araçlar) uygundur. Herkese açık içerik sayfalarında SSR ya da SSG genellikle daha hızlı bir ilk görünüm sağlar.

Sık karşılaştırılanlar

İlgili sayfalar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar