Author: @Elva Wang Date: Sep 24, 2020 性質: Tech Share
可以呈現 server 端所傳來的資訊,並提供user本地服務的程式
用來提供使用者web服務的軟硬體 (web server)
Client
會透過 HTTP 協定 (或其他) 送出 request
到 Server
去提取資料 (Get
)Server
接收到Client
的請求,經確認且Server
有該資料時,就會回傳一個帶有資料的 response
給 Client
Server Push
:在 HTTP/2 中新增的一種交互模式Server
能夠推測 Client
所需的資料,『主動』送出回應,進而增進效率The part that users interact with.
HTML
(描述網頁內容), CSS
(美化網頁), JavaScript
(網頁動態效果、邏輯)Sass
, jQuery
React.js
, Angular.js
, Vue.js
Responsible for storing and organizing data behind the scenes, and ensuring everything on the client-side actually works.
Language: Java
, Python
, Ruby
, . Net
, Javascript
etc.
Database
:
SQL
vs NoSQL
, MySQL
vs MongoDB
CRUD
: create
, read
, update
, and delete
API
(application programming interface)
kinds of calls or requests
that can be made, how to make
them, the data formats
that should be used, the conventions to follow, etcHTML
),將頁面傳至前端— Client 電腦處理能力越來越好~
漸漸將完整的使用者介面程式都放到 client 上,就有了Client-side rendering!—
JSON
),由前端決定如何用JavaScript 去渲染 (HTML
)Angular
, React
and Vue.js
等 JavaScript 框架興起 ⇒ CSR became popularSearch Engine Optimization (SEO) :
一種透過了解搜尋引擎的運作規則來調整網站,以及提高網站在搜尋引擎內排名的方式
用 React.js、Vue.js 等框架做網頁 ⇒ CSR
因為一切都是在前端才渲染完,所以爬蟲去讀就會拿到空白畫面,搜尋引擎(如 Googlebot)也是,那搜尋引擎便無法讀懂你的畫面 ⇒ 排名差
— 就有了 Isomorphic rendering 出現 —
圖為 Vue.js (搜尋引擎看不懂)
Frontend vs Backend: What's The Difference?
Rendering on the Web | Google Developers