ABOUTYOU
2018-10-10 14:15:42
一直都有聽過node做中間層,我也知道node可以請求java/php的接口,但是為什么不直接用ajax呢?難道是為了用模板引擎?node做中間層的作用是什么?
1 回答

翻過高山走不出你
TA貢獻1875條經驗 獲得超3個贊
我貼出這樣一張圖吧、現在有不少公司是這種模式
從底色可以看出node+UI布局都屬于前端范疇、這就好理解了
提出一個場景:
后端給前端提供了接口文檔、前端告訴后端、某某數據不想用對象、換成用數組吧
這種時候有兩種結果、后端修改了接口、或者后端不同意、讓前端自己改數據結構
那么引出我下面的回答
其實提出前后端分離、是為了更好的解決項目的耦合度、不在互相等待、不再互相依賴
如果加入node這一層其實是為了更好的解耦
node這一層通常是由前端來做、node調用java提供的接口、將數據再封裝、拓展、形成自己要的結構render到客戶端
很多時候會看到html下面做運算、做分組、其實就是這個問題:后端給的數據結構并不是前端想要的 或者 一些邏輯實在是太簡單了、想給前端人員來做
那瀏覽器上做運算、做分組、以及一系列操作是一定會影響性能的、尤其數據量很大的情況
那node中間層其實就相當于把很多這樣的代碼放入其中、也可以替后端分擔一些簡單的邏輯、又可以用模板引擎自己掌握前臺、
換言之、如果用node+模板引擎直接做、那前后端相當于沒有分離、也是互相依賴、等待、node的后端效果也不是很好
如果用java+jsp、那也是沒有分離、互相依賴互相等待、前后端要在溝通上花很多時間
總而言之、前后臺的分離更加明確、前臺不在過度依賴后臺、后端不再過度等待結合前端、方便解耦、降低溝通成本
還有就是前后臺完全可以分開發布
添加回答
舉報
0/150
提交
取消