一、项目依赖:
"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 和浏览器。
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.