Node.js 路由 - 初识 Express 中的路由

目录

[Node.js 路由 - 初识 Express 中的路由](#Node.js 路由 - 初识 Express 中的路由)

[1. 什么是路由?](#1. 什么是路由?)

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

[3. 创建 server.js](#3. 创建 server.js)

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

[5. 测试路由](#5. 测试路由)

[5.1 访问主页](#5.1 访问主页)

[5.2 访问用户路由](#5.2 访问用户路由)

[5.3 发送 POST 请求](#5.3 发送 POST 请求)

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


1. 什么是路由?

路由(Routing)是指根据不同的 URL 地址,服务器返回不同的内容 。在 Express 中,我们可以使用 app.get()app.post() 等方法定义路由。


2. 安装 Express

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

3. 创建 server.js

文件名:server.js(JavaScript 代码)

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

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

// 用户路由(GET 请求)
app.get('/user/:name', (req, res) => {
    const name = req.params.name; // 获取 URL 参数
    res.send(`你好,${name}!`);
});

// 提交数据路由(POST 请求)
app.use(express.json()); // 解析 JSON 请求体
app.post('/submit', (req, res) => {
    const { username, age } = req.body; // 获取请求体数据
    res.json({ message: '数据提交成功', user: { username, age } });
});

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

4. 运行服务器

执行命令:

bash 复制代码
node server.js

5. 测试路由

5.1 访问主页

浏览器打开 http://localhost:3000/,页面显示:

javascript 复制代码
欢迎来到 Express 主页!
5.2 访问用户路由

浏览器访问 http://localhost:3000/user/Tom,页面显示:

javascript 复制代码
你好,Tom!
5.3 发送 POST 请求

使用 Postman 或 curl 发送请求:

javascript 复制代码
curl -X POST http://localhost:3000/submit -H "Content-Type: application/json" -d '{"username": "Alice", "age": 25}'

服务器返回 JSON 响应:

javascript 复制代码
{
    "message": "数据提交成功",
    "user": {
        "username": "Alice",
        "age": 25
    }
}

6. 结语

本文介绍了 Express 路由 的基本用法,包括 GET 和 POST 请求,以及如何获取 URL 参数和请求体数据。希望这篇教程能帮助你快速上手 Express 路由!🚀

相关推荐
子兮曰1 小时前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰1 小时前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万2 小时前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝2 小时前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋2 小时前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁3 小时前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95275 小时前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大5 小时前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师5 小时前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学6 小时前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端