认识 Express.js:Node.js 最流行的 Web 框架

目录

[1. 什么是 Express.js?](#1. 什么是 Express.js?)

[2. 安装 Express](#2. 安装 Express)

[3. 创建一个简单的 Express 服务器](#3. 创建一个简单的 Express 服务器)

[4. 运行服务器](#4. 运行服务器)

[5. Express 基本功能](#5. Express 基本功能)

[5.1 路由](#5.1 路由)

[5.2 中间件](#5.2 中间件)

[5.3 处理 JSON 数据](#5.3 处理 JSON 数据)

[6. 结语](#6. 结语)


1. 什么是 Express.js?

Express.js 是一个基于 Node.js 的 Web 应用框架,能让我们快速搭建服务器,处理 HTTP 请求,提供 API,并支持中间件扩展。

2. 安装 Express

首先确保你安装了 Node.js,然后使用 npm 安装 Express:

bash 复制代码
mkdir express-demo && cd express-demo  # 创建项目目录
npm init -y  # 初始化项目
npm install express  # 安装 Express

3. 创建一个简单的 Express 服务器

新建 server.js 文件,写入以下代码:

javascript 复制代码
// server.js
const express = require('express'); // 引入 Express
const app = express(); // 创建 Express 应用
const port = 3000; // 端口号

// 主页路由
app.get('/', (req, res) => {
    res.send('Hello, Express!');
});

// 监听端口,启动服务器
app.listen(port, () => {
    console.log(`服务器运行在 http://localhost:${port}`);
});

4. 运行服务器

在终端执行:

bash 复制代码
node server.js

然后在浏览器访问 http://localhost:3000,你将看到:

bash 复制代码
Hello, Express!

5. Express 基本功能

5.1 路由

Express 可以处理不同的 URL 请求:

javascript 复制代码
app.get('/about', (req, res) => res.send('关于我们页面'));
app.get('/user/:name', (req, res) => res.send(`你好,${req.params.name}!`));

5.2 中间件

中间件用于处理请求,比如日志、身份验证等:

javascript 复制代码
app.use((req, res, next) => {
    console.log(`请求路径:${req.url}`);
    next();
});

5.3 处理 JSON 数据

javascript 复制代码
app.use(express.json());
app.post('/data', (req, res) => res.json({ received: req.body }));

6. 结语

Express.js 是 Node.js 最常用的 Web 框架,使用它可以快速搭建 Web 服务器、创建 API,并支持中间件扩展。试试自己动手写一个简单的 Express 项目吧!🚀

相关推荐
名字还没想好☜8 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
用户938515635078 小时前
从零在浏览器里跑 DeepSeek-R1:WebGPU + Transformer.js 全链路实战
前端·设计模式·typescript
CodeSheep9 小时前
稚晖君公司人事大变动,来了!
前端·后端·程序员
鱼樱前端9 小时前
用 AI 做内容变收入
前端·人工智能·ai编程
eric-sjq9 小时前
10 分钟实战:用 0.6B 本地模型生成中文网页(WanlyFrontend + 编译器全流程)
javascript·机器学习·自然语言处理·html
浮生望9 小时前
React + TypeScript 组件设计进阶:从类型约束到无状态组件的三次进化
前端
To_OC10 小时前
LC 438 找到所有字母异位词:暴力超时后,我靠滑动窗口一招搞定
javascript·算法·leetcode
90后的晨仔10 小时前
Mac 开发 uni-app 终极方案:让安卓模拟器彻底脱离 Android Studio 独立运行
前端·vue.js
90后的晨仔10 小时前
别再搞混了!uni-app 中 node_modules 和 uni_modules 到底是什么关系?
前端
kyriewen11 小时前
面试官问"这段逻辑为什么这样写"——我才发现,这半年我写的代码,我自己都解释不了
前端·javascript·面试