前后端分離與前后端不分離的區(qū)別
前后端不分離
在前后端不分離的應用模式中,前端頁面看到的效果都是由后端控制,由后端渲染頁面或重定向,也就是后端需要控制前端的展示,前端與后端的耦合度很高。
這種應用模式比較適合純網頁應用,但是當后端對接App時,App可能并不需要后端返回一個HTML網頁,而僅僅是數(shù)據本身,所以后端原本返回網頁的接口不適用于前端App應用,為了對接App后端還需再開發(fā)一套接口。
請求的數(shù)據交互如下圖:
前后端分離
在前后端分離的應用模式中,后端僅返回前端所需的數(shù)據,不再渲染HTML頁面,不再控制前端的效果。至于前端用戶看到什么效果,從后端請求的數(shù)據如何加載到前端中,都由前端自己決定,網頁有網頁的處理方式,App有App的處理方式,但無論哪種前端,所需的數(shù)據基本相同,后端僅需開發(fā)一套邏輯對外提供數(shù)據即可。
在前后端分離的應用模式中 ,前端與后端的耦合度相對較低。
在前后端分離的應用模式中,我們通常將后端開發(fā)的每個視圖都稱為一個接口,或者API,前端通過訪問接口來對數(shù)據進行增刪改查。
對應的數(shù)據交互如下圖 :