深入淺析客戶端渲染(CSR)和服務端渲染(SSR)
本篇文章為大家帶來了客戶端渲染CSR以及服務端渲染SSR的相關知識,希望對大家有幫助。
前序:簡述SEO
- #SEO(Search Engine Optimization)是指搜尋引擎優化,通俗說就是總結搜尋引擎的檢索排名規則,合理的優化網站,使得你的網站在百度或谷歌這樣的搜尋引擎中的排名進步,讓更多的用戶能夠訪問你的網站。
客戶端渲染:
-
客戶端渲染(Client Side Render),就是使用者在透過URL請求存取網站時,伺服器端返回給的是html文檔,再讓瀏覽器解析渲染展示頁面,其中的js,css,圖片文件等均需再次發送請求去服務端請求資料載入。
服務端渲染:
-
與用戶端渲染相對應的就是伺服器端渲染(SSR),在服務端看來,所有的前端渲染顯示頁面都是一串字串,包括html, js, css都是如此,服務端渲染即是將一段處理好後的html字符字串傳回給客戶端,而在傳回的這個html字串中,服務端知識將需要展示到html的服務端資料等資訊直接寫入到了這段html字串中讓客戶端瀏覽器能夠直接對其進行顯示。
這裡簡單範例一個服務端渲染的範例:
import Koa from 'koa' import Router from 'koa-router' const app = new Koa() const router = new Router() router.get('/', async (ctx) => { ctx.body = ` <title>服务端渲染返回</title> <h1 id="Hello-World">Hello World!</h1> ` }) app.use(router.routes()) app.listen(3000, () => { console.log("koa server listening on 3000") })
透過上述服務端傳回的html字串到客戶端直接顯示成了對應的網頁,這樣客戶端就不用再去多次不斷的請求服務端載入資料了
服務端渲染VS 用戶端渲染
- CSR與SSR最大的差別在於CSR進行頁面的渲染是服務端直接傳回HTML給客戶端渲染顯示,而SSR則是將頁面的渲染交給了服務端的JS執行。
- **傳統的CSR的弊端=> **
- #由於直接返回HTML到客戶端渲染,客戶端需要多次發送AJAX到服務端拉取JS程式碼執行,導致了頁面的首屏載入速度會變慢。
- 對於SEO是不友善的,因為我們客戶端是從服務端拉取JS過來執行的,而搜尋引擎的爬蟲只能辨識html結構的內容,對於js程式碼則無法進行辨識。
因此SSR的出現就是可以解決了傳統CSR存在的這種弊端,因為此時客戶端請求拿到的就將是我們服務端渲染好的html,這樣對於SEO也足夠的友好。
更多程式相關知識,請造訪:程式設計入門! !
以上是深入淺析客戶端渲染(CSR)和服務端渲染(SSR)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

前端開發趨勢總是不斷發展,有些趨勢會長期流行。這篇文章為大家總結了2023 年將突出的一些前端開發趨勢,分享給大家~

隨著網路的快速發展,前端開發技術也不斷改進與迭代。 PHP和Angular是兩種廣泛應用於前端開發的技術。 PHP是一種伺服器端腳本語言,可以處理表單、產生動態頁面和管理存取權限等任務。而Angular是一種JavaScript的框架,可以用來開發單一頁面應用程式和建構元件化的網頁應用程式。本篇文章將介紹如何使用PHP和Angular進行前端開發,以及如何將它們

昨天剛發了一篇Python桌面開發庫大全的微頭條,就被同事安麗了Flet這個庫。這是一個非常新的庫,今年6月才發布的第一個版本,雖然很新,但是它背靠巨人-Flutter,可以讓我們使用Python開發全平台軟體,雖然目前還不支援全平台,但是根據作者的計劃,Flutter支持的,它以後都會支持的,昨天簡單學習了一下,真的非常棒,把它推薦給大家。後面我們可以用它來做一系列東西。什麼是FletFlet是一個框架,允許用你喜歡的語言建立互動式多用戶Web,桌面和行動應用程序,而無需擁有前端開發的經驗。主

前端開發者必備:掌握這些最佳化模式,讓網站飛起來!隨著網路的快速發展,網站已成為企業宣傳和交流的重要管道之一。一個效能優良、載入迅速的網站不僅可以提升使用者體驗,還可以吸引更多的訪客。身為前端開發者,掌握一些最佳化模式是不可或缺的。本文將介紹一些常用的前端優化技術,幫助開發者更好地優化網站。壓縮檔案在網站開發中,經常使用的檔案類型包括HTML、CSS和J

掌握sessionStorage的作用,提升前端開發效率,需要具體程式碼範例隨著網路的快速發展,前端開發領域也日新月異。在進行前端開發時,我們經常需要處理大量的數據,並將其儲存在瀏覽器中以便後續使用。而sessionStorage就是一個非常重要的前端開發工具,可以提供我們臨時的本機儲存解決方案,提高開發效率。本文將介紹sessionStorage的作用,

前端開發中的JavaScript非同步請求與資料處理經驗總結在前端開發中,JavaScript是一門非常重要的語言,它不僅可以實現頁面的互動和動態效果,還可以透過非同步請求來取得和處理資料。在這篇文章中,我將總結一些在處理非同步請求和資料時的經驗和技巧。一、使用XMLHttpRequest物件進行非同步請求XMLHttpRequest物件是JavaScript用於發送

Golang前端新趨勢:解讀Golang在前端開發的應用前景近年來,前端開發領域發展迅猛,各種新技術層出不窮,而Golang作為一種快速、可靠的程式語言,也開始在前端開發中嶄露頭角。 Golang(也稱為Go)是由Google開發的程式語言,以其高效的效能、簡潔的語法和強大的功能而聞名,逐漸受到前端開發者的青睞。本文將探討Golang在前端開發的應用前

Django是一款使用Python建立的Web應用程式框架,它可以幫助開發人員快速建立高品質的網路應用程式。 Django在開發過程中通常會涉及到前端和後端兩個方面,但到底Django更適合哪一方面的開發呢?本文將探討Django在前端和後端開發的優勢,並提供具體的程式碼範例。 Django在後端開發的優勢Django作為後端框架,它具有許多優勢,以下分
