一、項目依賴:
源碼
"dependencies": {
"art-template": "^4.13.2",
"bcryptjs": "^2.4.3",
"config": "^3.3.6",
"dateformat": "^4.5.1",
"express": "^4.17.1",
"express-art-template": "^1.0.1",
"express-session": "^1.17.2",
"formidable": "^1.2.2",
"joi": "^17.4.0",
"mongoose": "^5.13.2",
"mongoose-sex-page": "^1.2.4",
"morgan": "^1.10.0",
"nodemon": "^2.0.12"
}
1、art-template
art-template 是一個簡約、超快的模闆引擎。
它采用作用域預聲明的技術來優化模闆渲染速度,進而獲得接近 JavaScript 極限的運作性能,并且同時支援 NodeJS 和浏覽器。
2、bcryptjs
bcryptjs,是一個第三方加密庫,用來實作在Node環境下的bcrypt加密
bcryptjs,是一個跨平台的檔案加密工具。由它加密的檔案可在所有支援的作業系統和處理器上進行轉移。它的密碼必須是8至56個字元,并将在内部被轉化為448位的密鑰。
3、config
config,為應用部署組織分層配置。
它可以定義一組預設參數,并将它們擴充到不同的部署環境(開發、qa、腳手架、生産 等)。
config:使用少量環境變量進行自己的配置。它還可以使用自定義環境變量來覆寫應用的配置。在這兩種情況下,這些通常在加載應用之前導出在外殼中,但也可以在指令行或應用引導中提供。
4、dateformat
A node.js package for Steven Levithan's excellent dateFormat() function.
5、express
express、高度包容、快速而極簡的 Node.js Web 架構
6、express-art-template
art-template for express
7、express-session
session 是一種記錄客戶狀态的機制,不同的是 Cookie 儲存在用戶端浏覽器中,session 儲存在伺服器上。
session 運作在伺服器端,當用戶端第一次通路伺服器時,可以将客戶的登入資訊儲存。當客戶通路其他頁面時,可以判斷客戶的登入狀态,做出提示,相當于登入攔截。
session 可以和 Redis 或者資料庫等結合做持久化操作,當伺服器挂掉時,,也不會導緻某些客戶資訊(例如:購物車資訊)丢失。
8、formidable
A Node.js module for parsing form data, especially file uploads.
9、joi
The most powerful schema description language and data validator for JavaScript.
10、mongoose
Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Mongoose supports both promises and callbacks.
11、mongoose-sex-page
a api friendly mongoose pagination tool
12、morgan
HTTP request logger middleware for node.js
13、nodemon
nodemon is a tool that helps develop node.js based applications by automatically restarting the node application when file changes in the directory are detected.
nodemon does not require any additional changes to your code or method of development. nodemon is a replacement wrapper for
node
. To use
nodemon
, replace the word
node
on the command line when executing your script.
下篇文章:
node.js + express + mongoose + express-art-template + mongodb + bootstrap 部落格實戰項目[黑馬程式員]--part02