Node.js 是一个非常流行的服务器端 JavaScript 运行平台,而 Express.js 则是 Node.js 上最常用的框架之一。Express.js 提供了一种简单而灵活的方式来构建 Web 应用程序和 API,并且具有丰富的功能和插件生态系统。本文将教你如何使用 Express.js 构建灵活的 Node.js 应用。
安装 Express.js
首先,确保你已经安装了 Node.js。然后,可以使用 npm(Node.js 包管理器)来安装 Express.js。打开命令行终端,并执行以下命令:
npm install express
安装完成后,你就可以在你的项目中引入 Express.js。
创建 Express 应用
在你的项目目录中,创建一个名为 app.js
的文件,并在其中引入 Express.js。然后,创建一个新的 Express 应用程序:
const express = require('express');
const app = express();
添加路由
Express.js 使用路由来处理不同的 URL 请求。可以通过定义路由来处理来自客户端的不同请求,并返回相应的响应。以下是一个简单的例子:
// 处理根路径的 GET 请求
app.get('/', (req, res) => {
res.send('Hello, World!');
});
// 处理/articles路径的 GET 请求
app.get('/articles', (req, res) => {
res.send('List of articles');
});
// 处理/articles路径的 POST 请求
app.post('/articles', (req, res) => {
res.send('Creating an article');
});
运行应用
添加了路由后,可以通过以下命令启动应用:
node app.js
现在,你的 Express 应用已经运行在本地开发服务器上,默认监听在端口 3000。你可以在浏览器中访问 http://localhost:3000
来查看结果。
使用中间件
Express.js 还提供了中间件机制,使你可以在处理请求和发送响应之间执行一些操作。例如,可以使用中间件来处理身份验证、日志记录等。以下是一个示例:
// 自定义中间件
const myMiddleware = (req, res, next) => {
console.log('Middleware executed');
next();
};
// 应用中间件
app.use(myMiddleware);
// 处理根路径的 GET 请求
app.get('/', (req, res) => {
res.send('Hello, World!');
});
在上面的例子中,中间件先输出一条消息,然后调用 next()
方法将请求传递给下一个中间件或路由处理程序。注:中间件的顺序很重要,因为它们按照定义的顺序执行。
使用模板引擎
Express.js 支持多种模板引擎,例如 EJS、Handlebars 等。你可以选择适合自己的模板引擎来渲染视图。以下是一个使用 EJS 模板引擎的示例:
首先,安装 EJS 模板引擎:
npm install ejs
然后,配置 Express.js 使用 EJS:
const express = require('express');
const app = express();
app.set('view engine', 'ejs');
app.set('views', 'views');
app.get('/', (req, res) => {
res.render('index', { title: 'My Express App' });
});
创建一个名为 views
的目录,并在其中创建一个名为 index.ejs
的文件。在该文件中,可以使用 EJS 语法来渲染视图,并传递数据:
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
</head>
<body>
<h1>Welcome to <%= title %></h1>
</body>
</html>
运行应用,并访问 http://localhost:3000
,你将看到渲染后的视图。
结论
Express.js 是构建灵活的 Node.js 应用程序和 API 的强大框架。通过使用 Express.js,你可以轻松地处理路由、添加中间件、使用模板引擎等。希望这篇文章能帮助你入门 Express.js,并开始构建自己的 Node.js 应用程序。
参考资料:
- Express.js 官方文档:https://expressjs.com/
- EJS 模板引擎官方文档:https://ejs.co/
本文来自极简博客,作者:绿茶清香,转载请注明原文链接:教你如何使用Express.js构建灵活的Node.js应用