客戶端渲染(SSR):前端去後端取數據生成DOM樹。
服務器端渲染的優勢:
1,盡量不要占用前端的資源,耗時少,速度快。
2,有利於SEO優化,因為後端有完整的html頁面,所以爬蟲抓取信息更容易。
服務器端渲染的缺點:
1,不利於前後端分離,降低了開發效率。
2.html的解析加速了前端,但是增加了服務器的壓力。
客戶端渲染的優勢:
1,前後端分離,開發效率高。
2、用戶體驗更好,我們會把網站做成SPA(單頁應用)或者部分內容做成SPA,用戶點擊時不會形成頻繁跳轉。
客戶端渲染的缺點:
1,前端響應速度慢,尤其是第壹屏,用戶受不了。
2,不利於SEO優化,因為爬蟲不懂SPA,所以只是記錄壹個頁面。
服務器和客戶端渲染的區別:
1,兩者的本質區別:html的完整拼接是誰完成的?服務器渲染是在服務器端生成DOM樹,客戶端渲染是在客戶端生成DOM樹。
2.響應速度:服務器端渲染會加快頁面的響應速度,而客戶端渲染會比較慢。
3、SEO優化:服務器渲染因為是多個頁面,更有利於抓取信息,客戶端渲染不利於SEO優化。
4.開發效率:服務器端渲染邏輯沒有很好的分離,不利於前後端的分離,開發效率低。客戶端渲染采用前後臺分離開發,效率更高,也是大多數業務采用的渲染方式。
直觀區分服務器渲染和客戶端渲染;
如果妳能在源代碼中找到前端頁面的內容文本,那就是服務器端構建的DOM,是服務器端渲染,反之亦然。
我應該使用服務器端渲染還是客戶端渲染:
我們要根據業務場景來選擇渲染方式。
如果是以頁面呈現為主要功能的企業級網站,沒有復雜的交互,需要良好的SEO,那麽就要使用服務器端渲染。
如果是交互性很強的後臺管理頁面,不需要考慮SEO,那麽就要用客戶端渲染。
使用哪種渲染方法並不是絕對的。目前很多網站都是采用服務器端渲染和客戶端渲染相結合的方式:首屏使用服務器端渲染,其他頁面使用客戶端渲染。這樣可以保證第壹屏的加載速度,完成前後端的分離。