我是學習者Node.js。什麼是Express.js?
- 什麼是Express.js?
- 它與Node.js的目的是什麼?
- 爲什麼我們實際上需要Express.js?如何使用Node.js對我們有用?
- 什麼是Redis?它是否帶有Express.js?
我是學習者Node.js。什麼是Express.js?
它是在簡化,但Express.js是Node.js什麼Ruby on Rails或Sinatra是Ruby。
Express 3.x是一個輕量級的Web應用程序框架,可幫助您將Web應用程序組織到服務器端的MVC體系結構中。您可以爲模板語言使用各種選項(如EJS,Jade和Dust.js)。
然後,您可以使用類似MongoDB和Mongoose(用於建模)的數據庫爲您的Node.js應用程序提供後端。 Express.js基本上可以幫助您管理所有事情,從路由到處理請求和視圖。
Redis是一個鍵/值存儲 - 通常用於Node.js應用程序中的會話。你可以做更多的事情,但這就是我使用它的原因。我使用MongoDB來處理更復雜的關係,如訂單項< - >訂單< - >用戶關係。有些模塊(最值得注意的是connect-redis)可以與Express.js一起使用。您需要在服務器上安裝Redis數據庫。
這裏是快遞3.x的引導鏈接:https://expressjs.com/en/3x/api.html
1)什麼是Express.js?
Express.js是Node.js框架。這是目前最流行的框架(最突出的NPM)。
。
它建立在連接中間件的配置和粒度簡單的基礎上。有些人將Express.js與Ruby Sinatra進行比較,而對比笨重和自以爲是的Ruby on Rails。
2)它與Node.js的目的是什麼?
你不必一遍又一遍重複相同的代碼。 Node.js是一個具有HTTP模塊的低級別的I/O機制。如果你只是使用HTTP模塊,像解析有效負載,cookie,存儲會話(在內存中或在Redis),選擇基於regular expressions的正確路由模式很多工作將有重新實現。 Express.js在那裏供您使用。
3)爲什麼我們實際上需要Express.js?如何使用Node.js對我們有用?
第一個答案應該回答你的問題。如果不是,那麼嘗試在普通Node.js(即,僅使用核心模塊)中編寫一個小的REST API服務器,然後在Express.js中編寫。後者將減少5-10倍的代碼時間和行數。
什麼是Redis?它是否帶有Express.js?
Redis是一個快速持久性鍵值存儲。您可以選擇使用它來存儲Express.js的會話,但不需要。默認情況下,Express.js具有會話的內存存儲空間。 Redis也可用於排隊作業,例如電子郵件作業。
結帳my tutorial on REST API server with Express.js。
MVC但不是由本身
Express.js是不本身的模型 - 視圖 - 控制器框架。您需要將自己的對象關係映射庫(例如用於MongoDB的Mongoose),用於SQL數據庫的Sequelize(http://sequelizejs.com),用於許多數據庫的Waterline(https://github.com/balderdashy/waterline)放入堆棧。
替代
其他Node.js的框架來考慮(https://www.quora.com/Node-js/Which-Node-js-framework-is-best-for-building-a-RESTful-API):
更新:我這個資源放在一起,援助的人在選擇Node.js的框架:http://nodeframework.com
UPDATE2:我們爲nodeframework.com添加了一些GitHub統計數據,所以現在您可以在一個頁面上比較30多個框架的社會證明(GitHub stars)級別。
全棧:
只是REST API:
Ruby on Rails的喜歡:
西納特拉,如:
其他:
中間件:
靜態網站生成器:
我不能比這更簡潔。對於您的其他需求和信息,Google是您的朋友。
Express.js是一個Node.js的Web應用程序服務器架構,專爲 建設單頁,多頁,和混合Web應用程序。它是 node.js事實上的標準服務器框架。
構建在Express上的框架。
幾種流行的Node.js的框架是建立在快遞:
環回:快速 創建動態終端到終端的REST API的高度可擴展的,開放源碼的Node.js框架。
風帆:MVC框架 Node.js用於構建實用的,可用於生產的應用程序。
Kraken:通過提供結構和約定來擴展Express的安全和可擴展層。
意思是:意見完整的JavaScript框架, 簡化和加速Web應用程序開發。
Express增加了對Connect中間件的簡單路由和支持,允許多種擴展和有用的功能。
例如,
ExpressJS是裸機在NodeJS之上的web應用程序框架。
它可以用來快速構建WebApps,RESTFUL APIs等。
支持多種模板引擎,如Jade,EJS。
ExpressJS只保留最低限度的功能作爲核心功能,因此默認情況下不支持ORM或DB。但通過一點點努力expressjs應用程序可以與不同的數據庫集成。
有關創建ExpressJS應用一個入門指南,看看下面的鏈接:
Express.js是用於節點的框架,它是最常用的爲節點的Web應用程序JS。
這裏是一個視頻的鏈接瞭解如何快速建立與快遞https://www.youtube.com/watch?v=QEcuSSnqvck
快遞節點的應用程序只是爲節點,您可以使用的應用程序基於服務器/ s的模塊框架, 「監聽」來自客戶端的任何輸入/連接請求。當您在Node中使用它時,它只是說您要求使用Node模塊中的內置Express文件。
Express是許多Web應用程序的後端在NodeJS中的「骨幹」。據我所知,其主要資產是處理2臺主機之間「交互」服務的路由系統。有很多替代品,比如Sails。希望我的回答有幫助。
Express.js由TJ Holowaychuk創建,現在由社區管理。它是node.js中最流行的框架之一。 Express也可用於開發各種產品,如Web應用程序或RESTful API。有關更多信息,請在expressjs.com官方網站上閱讀。
向下滾動到社區維基答案(其中有+50賞金)。我發現比標記的答案更有幫助。 –