Node.js 监听 GET 和 POST 请求并处理参数

目录

[1. 安装 Node.js 和 Express](#1. 安装 Node.js 和 Express)

[2. 创建服务器并监听 GET 和 POST 请求](#2. 创建服务器并监听 GET 和 POST 请求)

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

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


1. 安装 Node.js 和 Express

在开始之前,请确保你已经安装了 Node.js ,然后使用 npm 安装 Express

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

2. 创建服务器并监听 GET 和 POST 请求

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

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

// 解析 JSON 和 URL 编码数据
app.use(express.json());
app.use(express.urlencoded({ extended: true }));

// 监听 GET 请求,获取查询参数
app.get('/get-user', (req, res) => {
    const name = req.query.name; // 获取 URL 查询参数 ?name=xxx
    res.send(`GET 请求收到,用户:${name}`);
});

// 监听 POST 请求,获取请求体数据
app.post('/post-user', (req, res) => {
    const { name, age } = req.body; // 获取 JSON 请求体参数
    res.json({ message: 'POST 请求收到', user: { name, age } });
});

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

3. 运行服务器

在终端执行:

javascript 复制代码
node server.js

服务器启动后,访问 http://localhost:3000/get-user?name=Tom,页面会返回:

javascript 复制代码
GET 请求收到,用户:Tom

然后使用 Postman 或 curl 发送 POST 请求:

bash 复制代码
curl -X POST http://localhost:3000/post-user -H "Content-Type: application/json" -d '{"name": "Alice", "age": 25}'

服务器返回 JSON 响应:

javascript 复制代码
{
    "message": "POST 请求收到",
    "user": {
        "name": "Alice",
        "age": 25
    }
}

4. 结语

这篇文章介绍了如何使用 Node.js + Express 监听 GET 和 POST 请求,并解析 URL 查询参数和 JSON 请求体数据。希望这篇教程能帮助你快速上手!🚀

相关推荐
华玥作者10 小时前
[特殊字符] VitePress 对接 Algolia AI 问答(DocSearch + AI Search)完整实战(下)
前端·人工智能·ai
Mr Xu_11 小时前
告别冗长 switch-case:Vue 项目中基于映射表的优雅路由数据匹配方案
前端·javascript·vue.js
前端摸鱼匠11 小时前
Vue 3 的toRefs保持响应性:讲解toRefs在解构响应式对象时的作用
前端·javascript·vue.js·前端框架·ecmascript
学嵌入式的小杨同学11 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
sleeppingfrog11 小时前
zebra通过zpl语言实现中文打印(二)
javascript
lang2015092811 小时前
JSR-340 :高性能Web开发新标准
java·前端·servlet
缘空如是12 小时前
基础工具包之JSON 工厂类
java·json·json切换
好家伙VCC12 小时前
### WebRTC技术:实时通信的革新与实现####webRTC(Web Real-TimeComm
java·前端·python·webrtc
未来之窗软件服务13 小时前
未来之窗昭和仙君(六十五)Vue与跨地区多部门开发—东方仙盟练气
前端·javascript·vue.js·仙盟创梦ide·东方仙盟·昭和仙君
baidu_2474386113 小时前
Android ViewModel定时任务
android·开发语言·javascript