nuxt-基於vue的服務端渲染框架


什么是服務器端渲染

  • 前端渲染:html頁面作為靜態文件存在,前端請求時后端不對該文件做任何內容上的修改,直接以資源的方式返回給前端,前端拿到頁面后,根據寫在html頁面上的js代碼,對該html的內容進行修改。
  • 服務端渲染:前端發出請求后,后端在將HTML頁面返回給前端之前,先把HTML頁面中的特定區域,用數據填充好,再將完整的HTML返回給前端。在SPA場景下,服務端渲染都是針對第一次get請求,它會完整的html給瀏覽器,瀏覽器直接渲染出首屏,用不着瀏覽器端多一個AJAX請求去獲取數據再渲染。

為什么使用服務器端渲染

優點:

  • 更好的 SEO,因為傳統的搜索引擎只會從 HTML 中抓取數據,這會導致前端渲染的頁面無法被抓取。
  • 更快的內容到達時間(time-to-content),特別是對於緩慢的網絡情況或運行緩慢的設備 。頁面首屏時間大概有80%消耗在網絡上,剩下的時間在后端讀取數據以及瀏覽器渲染,顯然要優化后面的20%是比較困難的,優化網絡時間是效果最明顯的手段。傳統的Ajax請求是先請求js再由js發起數據請求,兩項時間再加上瀏覽器渲染時間才是首屏時間。而SSR能將兩個請求合並為一個。

缺點:

  • 更多的服務器端負載。
  • 服務器端和瀏覽器環境差異帶來的問題,例如document等對象找不到的問題。

如何選擇

建議:如果注重SEO的新聞站點,非強交互的頁面,建議用SSR;像后台管理頁面這類強交互的應用,建議使用前端渲染。

 

nuxt工作原理:

下圖可以解釋為6個步驟:

1.接收到客戶端的一個請求

2.生成了nuxt服務器

3.走了一個中間件

4.驗證、校驗

5.異步數據的獲取

6.render渲染生成頁面

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM