Express.js 是一个流行的 Node.js Web 框架,它提供了许多有用的功能来帮助构建 Web 应用程序。在本文中,我们将详细介绍在 Express 4.x 中可以做的一些事情,并提供相关示例代码。
创建应用程序
使用 Express 4.x 可以非常简单地创建一个新的 Web 应用程序。只需要安装 Express 并编写以下代码即可:
-- -------------------- ---- ------- -- -- ------- -- ----- ------- - ------------------- -- -- ------- ---- ----- --- - ---------- -- ----- ------------ ----- ---- -- - --------------- --------- --- -- ----- ---------------- -- -- - ---------------- --------- -- ---- -------- ---
这段代码会创建一个最基本的 Express 应用程序,并监听本地的 3000 端口。
路由
在 Express 中,路由是用于确定 HTTP 请求如何响应的机制。Express 支持 GET、POST、PUT、DELETE 等 HTTP 请求方法,并且能够处理各种类型的请求数据(例如 JSON、URL 编码表单数据等)。
以下是一个简单的路由示例:
app.get('/users/:userId/books/:bookId', function (req, res) { res.send(req.params); });
在这个示例中,当用户访问 /users/34/books/8989
时,服务器将返回以下响应:
{ "userId": "34", "bookId": "8989" }
中间件
Express 中的中间件是处理 HTTP 请求和响应的函数。中间件可以执行各种任务,例如:解析请求体、验证身份、记录日志等。
以下是一个简单的中间件示例:
app.use((req, res, next) => { console.log('Time:', Date.now()); next(); });
这个中间件会在每个请求处理之前打印当前时间戳。
模板引擎
Express 支持使用模板引擎来渲染动态 HTML 页面。常见的模板引擎包括 Pug、EJS、Handlebars 等。
以下是一个使用 Pug 模板引擎的示例:
// 设置视图引擎 app.set('view engine', 'pug'); // 渲染 index.pug 模板 app.get('/', (req, res) => { res.render('index', { title: 'Hello World' }); });
在这个示例中,当用户访问根路由时,将渲染 index.pug
模板,并将 { title: 'Hello World' }
对象传递给模板以供渲染。
静态文件服务
Express 能够为静态资源(例如 CSS、JavaScript、图像等)提供服务,只需指定一个目录即可。
以下是一个静态文件服务示例:
app.use(express.static('public'));
在这个示例中,public
目录下的所有文件都可以通过 /
访问。
数据库集成
Express 并不提供自己的数据库集成,但是可以轻松与许多不同的数据库集成。例如,可以使用 Mongoose 来连接 MongoDB。
以下是一个使用 Mongoose 连接 MongoDB 的示例:
-- -------------------- ---- ------- ----- -------- - -------------------- --------------------------------------------------- - ---------------- ---- --- ----- --- - --------------------- - ----- ------ --- ---------------- ----- ---- -- - -------------- ----- -- - -- ----- ------ ------------------- --------------- --- ---
在这个示例中,当用户访问 /cats
路由时,服务器将查询 MongoDB 中的所有 Cat 文档,并将结果发送回客户端。
总结
本文介
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/10914