认识 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 项目吧!🚀

相关推荐
free3514 小时前
从 0 实现一个 Tiny JavaScript VM:项目架构拆解
javascript
奇奇怪怪的14 小时前
Embedding 模型 10+ 横向评测
前端
陈广亮14 小时前
Monorepo 从 0 到 1 实操指南 2026 版:pnpm catalogs + Turborepo 2.x + changesets 全链路
前端
子兮曰14 小时前
OpenMontage 深度解剖:你的 AI 编程助手,其实是个视频工作室
前端·后端·ai编程
敲代码的鱼14 小时前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
子兮曰14 小时前
前端工具链的「Rust 化」:一场没有赢家的军备竞赛?
前端·后端·rust
Hyyy15 小时前
Function Calling / Tool Use的原理和实现模式
前端·llm·ai编程
爱勇宝15 小时前
从 Ctrl+CV 到 Enter:程序员正在失去什么
前端·后端·程序员
徐小夕16 小时前
我们开源了一款“框架无关”的思维导图编辑器,3分钟集成到任意系统
前端·javascript·github
PBitW16 小时前
GPT训练我的第三天,明白了应该咋说满分回答!😕😕😕
前端·javascript·面试