node后臺(tái)框架有:1、Koa,一個(gè)開(kāi)源的Node web框架,用Generator來(lái)實(shí)現(xiàn)中間件的流程控制,用try/catch來(lái)增強(qiáng)異常處理;2、Nest,一個(gè)用于構(gòu)建高效、可擴(kuò)展的Node服務(wù)器端應(yīng)用程序的框架;3、Socket,是用來(lái)在客戶端和服務(wù)器端之間創(chuàng)建實(shí)時(shí)雙向通信的框架;4、Sails,是一個(gè)非常穩(wěn)固的Node框架,提供建立任何規(guī)模的Web應(yīng)用所需要的所有功能。
本教程操作環(huán)境:windows7系統(tǒng)、nodejs16版,DELL G3電腦。
Node是最敏捷的服務(wù)端 web 應(yīng)用平臺(tái),因?yàn)樗鼮閼?yīng)用開(kāi)發(fā)公司提供了構(gòu)建可擴(kuò)展的單一編程語(yǔ)言 web 平臺(tái)的便利。它是最熱門的開(kāi)源的 JavaScript 運(yùn)行時(shí)框架之一,具有跨平臺(tái)屬性,讓我們可以在瀏覽器以外的環(huán)境運(yùn)行代碼。
node.js后臺(tái)框架
1、Koa
Koa更像是一個(gè)“框架的框架”,因?yàn)樗旧韺?shí)在太簡(jiǎn)單了且極度自由。Koa 使用 Generator 來(lái)實(shí)現(xiàn)中間件的流程控制,使用try/catch 來(lái)增強(qiáng)異常處理,同時(shí)在 Koa 框架中你再也看不到復(fù)雜的 callback 回調(diào)了。Koa框架本身非常小,只打包了一些必要的功能,沒(méi)有進(jìn)程管理得搭配著第三方包一起使用。
Koa.js 可以被用于:
-
前臺(tái)系統(tǒng)
-
后臺(tái)系統(tǒng)
-
混合系統(tǒng)
Koa.js 主要特性:
-
代表現(xiàn)代和未來(lái)
-
與所有 Node.js 框架相比,體積更小。
-
有一個(gè)內(nèi)置的錯(cuò)誤捕捉器,防止網(wǎng)站崩潰。
-
使用 context 對(duì)象,該對(duì)象同時(shí)擁有請(qǐng)求和響應(yīng)對(duì)象。
2、Nest
Nest 是一個(gè)用于構(gòu)建高效,可擴(kuò)展的 Node.js 服務(wù)器端應(yīng)用程序的框架。真正完備的、工業(yè)級(jí)的框架。它使用漸進(jìn)式 JavaScript,內(nèi)置并完全支持 TypeScript(但仍然允許開(kāi)發(fā)人員使用純 JavaScript 編寫代碼)并結(jié)合了 OOP(面向?qū)ο缶幊?,F(xiàn)P(函數(shù)式編程)和 FRP(函數(shù)式響應(yīng)編程)的元素。提供完整的解決方案,從代碼到模塊拆分到微服務(wù)模型。并且它的框架底層 HTTP 平臺(tái)默認(rèn)是基于 Express 實(shí)現(xiàn)的,所以不必?fù)?dān)心第三方庫(kù)的缺失。它也提供了一個(gè)開(kāi)箱即用的應(yīng)用程序架構(gòu),允許開(kāi)發(fā)人員和團(tuán)隊(duì)創(chuàng)建高度可測(cè)試,可擴(kuò)展,松散耦合且易于維護(hù)的應(yīng)用程序。
Nest.js 可以被用于:
-
編寫更清晰和可重用的代碼。
-
編寫具有更高層次結(jié)構(gòu)的代碼,如攔截器、過(guò)濾器、管道等;
-
編寫可擴(kuò)展、可測(cè)試和松散型應(yīng)用程序。
Nest.js 主要特性
-
易于擴(kuò)展:可與其他庫(kù)一起使用。
-
允許開(kāi)發(fā)人員完全使用純 JavaScript 進(jìn)行編碼。
-
結(jié)合了函數(shù)式編程、面向?qū)ο缶幊毯晚憫?yīng)式編程的特點(diǎn)。
-
公開(kāi)框架 API,幫助開(kāi)發(fā)者使用各平臺(tái)上的各種第三方模塊。
-
它有一個(gè)詳細(xì)且維護(hù)良好的文檔。
3、Total
Total.js是助你創(chuàng)建Node.js,Web頁(yè)面/應(yīng)用的好框架,同樣支持MVC架構(gòu)。
4、Socket
Socket.io 是用來(lái)在客戶端和服務(wù)器端之間創(chuàng)建實(shí)時(shí)雙向通信的框架。要做到這一點(diǎn),客戶端需要在瀏覽器中安裝 http://Socket.io,服務(wù)器也要集成 http://Socket.io 包。這使得數(shù)據(jù)可以在數(shù)百萬(wàn)種形式中共享。然而,最受歡迎的方法仍然是 JSON。
Socket.io 由以下兩個(gè)部分組成:
-
JavaScript 服務(wù):Node.js
-
JavaScript 客戶端庫(kù):Node.js
注意: Socket.io 還兼容許多其他語(yǔ)言,如 Java、C+、Swift、Dart、.Net 和 Python。
Socket.io 可以被用于:
-
各種命名空間
-
廣播
-
事件處理
-
錯(cuò)誤處理
-
日志和調(diào)試
-
聊天應(yīng)用
-
內(nèi)部
Socket.io 主要特性:
-
將信息編碼為命名的 JSON 或二進(jìn)制事件。
-
在應(yīng)用程序中添加“實(shí)時(shí)”能力。
-
支持自動(dòng)重新連接
-
出色的速度和可靠性
-
即時(shí)通訊和聊天
5、Sails
Sails 是一個(gè)非常穩(wěn)固的 Node.js 框架,提供了建立任何規(guī)模的 Web 應(yīng)用所需要的所有功能。在底層使用了 Express框架來(lái)提供對(duì) HTTP 請(qǐng)求的處理,同時(shí)使用 Socket.IO 框架來(lái)處理WebSocket 請(qǐng)求。它也實(shí)現(xiàn)了 ORM 功能,讓你的應(yīng)用程序可以在不進(jìn)行大的修改的前提下,就可以從一個(gè)后端數(shù)據(jù)庫(kù),切換到另外一個(gè)。Sails 特別適合用來(lái)開(kāi)發(fā)對(duì)數(shù)據(jù)的實(shí)時(shí)更新有較高要求的應(yīng)用,而且它的注釋巨多巨詳細(xì),生怕你不知道怎么用。關(guān)心開(kāi)發(fā)者的框架才能長(zhǎng)久下去喔。
6、Egg
Egg基于Koa,約束和規(guī)范化團(tuán)隊(duì)開(kāi)發(fā),核心是幫助開(kāi)發(fā)團(tuán)隊(duì)和開(kāi)發(fā)人員降低開(kāi)發(fā)和維護(hù)成本。它提供基于 Egg 定制上層框架的能力,高度可擴(kuò)展的插件機(jī)制,內(nèi)置多進(jìn)程管理,
性能優(yōu)異,框架穩(wěn)定。它已被用在阿里多條產(chǎn)品線上,可以證明它的安全可靠性,請(qǐng)放心使用。
7、Hapi.js
Hapi.js延續(xù)了Express.JS的所有優(yōu)點(diǎn),并且增加了一些功能。開(kāi)發(fā)者不用再浪費(fèi)時(shí)間構(gòu)建基礎(chǔ)架構(gòu),可以利用這些時(shí)間來(lái)編寫可重用的應(yīng)用邏輯。它的一些優(yōu)點(diǎn):修復(fù)bug和增加新功能都不需要花費(fèi)時(shí)間,為不同類型的客戶端構(gòu)建API,基于插件的體系結(jié)構(gòu)使擴(kuò)展變得容易,更好地控制如何處理請(qǐng)求。
Hapi.js 可以被用于:
-
網(wǎng)站
-
HTTP 代理應(yīng)用
-
應(yīng)用程序接口服務(wù)
Hapi.js 主要特性:
-
輸入驗(yàn)證
-
日志
-
錯(cuò)誤處理
-
代碼可重用性
-
緩存
-
沒(méi)有外部依賴
-
基于配置的功能
-
集成框架:在 Node 框架中提供全面的認(rèn)證和授權(quán) API 支持。