一、Node.js + Express基本用法教程
1. 什么是Node.js?
Node.js是一款基于Chrome V8引擎的JavaScript运行环境,通常用于构建高效的、可扩展的网络应用程序。Node.js可以在服务器端执行JavaScript代码,因此可以用于构建后端Web应用程序以及命令行工具等。
2. 什么是Express?
Express是一款基于Node.js的Web应用程序开发框架,它提供了一系列功能丰富且易于使用的API,可以帮助我们快速创建各种类型的Web应用程序。
3. 如何安装Node.js和Express
首先,你需要在本地安装Node.js。可以从官方网站 https://nodejs.org/en/ 下载Node.js安装程序,并按照官方指南进行安装。
在安装完Node.js之后,你需要打开终端,输入以下命令来安装Express:
npm install express --save
这将安装最新版本的Express。安装完成后,你可以在你的项目中使用Express。
4. 如何使用Express
在你的项目中引入Express:
const express = require('express');
const app = express();
创建一个API:
app.get('/', function (req, res) {
res.send('Hello World!');
});
这个API将对根路径进行GET请求并发送“Hello World!”响应。
在你的浏览器中访问 http://localhost:3000/ ,应该会看到“Hello World!”输出在页面上。
5. 示例说明
在以下示例中,我们将使用Express创建一个Web应用程序,并使用EJS模板引擎来渲染我们的页面。
首先,你需要安装依赖:
npm install express --save
npm install ejs --save
接下来,在你的项目中创建一个app.js文件,并添加以下代码:
const express = require('express');
const app = express();
const ejs = require('ejs');
// 将EJS模板引擎设置为默认值
app.set('view engine', 'ejs');
// 将public文件夹设置为静态文件夹
app.use(express.static('public'));
// 创建一个API,当我们访问'/'时返回index.ejs模板
app.get('/', function(req, res) {
res.render('index', {
title: 'Express + EJS',
message: 'Hello World!'
});
});
// 在3000端口上启动服务器
app.listen(3000, function() {
console.log('Server started on port 3000.');
});
这个app.js文件将创建一个Express应用程序。当我们访问根路径时,它将使用EJS模板渲染index.ejs文件,并返回一个包含数据的HTML响应。
现在,我们需要创建一个views文件夹,并在其中创建一个index.ejs文件:
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
</head>
<body>
<h1><%= message %></h1>
</body>
</html>
这个index.ejs文件将包含一个简单的HTML文档,其中有一个标题和一个消息,这些消息将在服务器端动态设置。
现在我们可以在终端中输入以下命令来启动我们的应用程序:
node app.js
当我们访问 http://localhost:3000/ ,应该会看到“Hello World!”输出在页面上,这个页面是由EJS模板渲染的。
这就是用Express创建基本Web应用程序的过程。总结一下,我们需要做以下几件事情:
- 安装Node.js和Express
- 引入Express
- 创建API来处理HTTP请求
- 使用模板引擎来渲染页面
- 启动服务器,并监听请求
二、Express中的中间件用法教程
1. 什么是中间件?
中间件是在处理HTTP请求时,对请求进行修改、处理和转换的一段代码。在Express应用程序中,你可以使用中间件来处理路由、错误处理、身份验证等。
2. 如何使用中间件?
使用中间件非常简单。你可以使用app.use()方法将中间件添加到你的Express应用程序中。
例如,下面是一个简单的中间件,它将在处理HTTP请求时将时间戳记录到控制台输出中:
const express = require('express');
const app = express();
app.use(function(req, res, next) {
console.log('Time:', Date.now());
next();
});
app.get('/', function(req, res) {
res.send('Hello World!');
});
app.listen(3000, function() {
console.log('Server started on port 3000.');
});
在这个示例中,我们使用app.use()方法将一个中间件添加到我们的应用程序中。这个中间件记录当前时间戳并将其作为控制台输出。
注意,每当我们调用next()函数时,中间件函数将返回给Express应用程序的控制权,以便处理HTTP请求。
3. 示例说明
在以下示例中,我们将使用Express和中间件来创建一个简单的身份验证系统。
首先,你需要安装依赖:
npm install express --save
npm install body-parser --save
接下来,在你的项目中创建一个app.js文件,并添加以下代码:
const express = require('express');
const app = express();
const bodyParser = require('body-parser');
// 使用body-parser中间件来解析请求参数
app.use(bodyParser.urlencoded({ extended: false }));
// 创建一个API,当我们访问/login时,将应用身份验证中间件
app.post('/login', function(req, res, next) {
if (req.body.username === 'user' && req.body.password === 'pass') {
next();
} else {
res.status(401).send('Unauthorized');
}
});
// 创建一个API,当我们访问/protected时,将返回受保护的信息
app.get('/protected', function(req, res) {
res.send('Protected information');
});
// 在3000端口上启动服务器
app.listen(3000, function() {
console.log('Server started on port 3000');
});
这个app.js文件将创建一个简单的Express应用程序。当我们访问/login并输入正确的用户名和密码时,应用程序将应用身份验证中间件,并将我们重新路由到/protected API,该API将返回受保护的信息。否则,我们将获得401错误响应。
现在我们可以在终端中输入以下命令来启动我们的应用程序:
node app.js
当我们访问 http://localhost:3000/protected 时,如果我们已经登录,我们将看到“Protected information”的输出。否则,我们将收到401错误响应。
这就是使用Express中间件创建基本身份验证系统的过程。总结一下,我们需要做以下几件事情:
- 安装Node.js、Express和body-parser
- 引入Express和body-parser
- 创建API并使用中间件来添加身份验证
- 启动服务器,并监听请求
以上是Node.js + Express基本用法教程的完整攻略,其中包含了使用Express创建基本Web应用程序和使用Express中间件创建基本身份验证系统的示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Node.js + express基本用法教程 - Python技术站