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 请求体数据。希望这篇教程能帮助你快速上手!🚀

相关推荐
夏鹏今天学习了吗24 分钟前
【性能优化】前端高性能优化策略
前端·性能优化
weixin_427771613 小时前
css font-size 的妙用
前端·css
凤凰战士芭比Q4 小时前
web中间件——Nginx
前端·nginx·中间件
一 乐5 小时前
点餐|智能点餐系统|基于java+ Springboot的动端的点餐系统小程序(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·小程序·论文
视图猿人5 小时前
RxJS基本使用及在next.js中使用的例子
开发语言·javascript
bitbitDown5 小时前
从零打造一个 Vite 脚手架工具:比你想象的简单多了
前端·javascript·面试
liangshanbo12156 小时前
CSS 数学函数完全指南:从基础计算到高级动画
前端·css
码上成长7 小时前
GraphQL:让前端自己决定要什么数据
前端·后端·graphql
冴羽7 小时前
为什么在 JavaScript 中 NaN !== NaN?背后藏着 40 年的技术故事
前端·javascript·node.js
久爱@勿忘7 小时前
vue下载项目内静态文件
前端·javascript·vue.js