使用JavaScript和Node.js构建简单的RESTful API

引言

本文将指导你如何使用JavaScript和Node.js的Express框架构建一个简单的RESTful API。我们将创建一个简单的用户管理系统,包括获取用户列表、添加新用户以及删除用户。

正文与代码演示

  1. 设置项目

    首先,创建一个新的项目文件夹,并在其中初始化一个新的Node.js项目。

    复制代码
    mkdir rest-api
    cd rest-api
    npm init -y
  2. 安装Express和body-parser

    接下来,我们需要安装Express框架和body-parser中间件。

    复制代码
    npm install express body-parser
  3. 创建Express应用

    现在,我们可以创建一个名为app.js的文件,并添加以下代码。

    复制代码
    const express = require('express');
    const bodyParser = require('body-parser');
    const app = express();
    const PORT = 3000;
    
    let users = [];
    
    app.use(bodyParser.json());
    
    app.get('/users', (req, res) => {
         
        res.json(users);
    });
    
    app.post('/users', (req, res) => {
         
        const newUser = req.body;
        users.push(newUser);
        res.status(201).json(newUser);
    });
    
    app.delete('/users/:id', (req, res) => {
         
        const {
          id } = req.params;
        users = users.filter(user => user.id !== parseInt(id));
        res.status(204).send();
    });
    
    app.listen(PORT, () => {
         
        console.log(`Server is running on port ${
           PORT}`);
    });
  4. 运行应用

    现在,我们可以运行这个Express应用。

    复制代码
    node app.js

    使用curl命令或Postman等工具访问http://localhost:3000/users(GET请求)、http://localhost:3000/users(POST请求,JSON数据{"id": 1, "name": "John Doe"})以及http://localhost:3000/users/:id(DELETE请求),你将看到相应的响应。

相关推荐
lemon_sjdk6 小时前
DOM 节点
java·前端·javascript
leoZ2317 小时前
2026-09-09-springboot-cloud-deploy-pitfalls
java·前端·javascript·vue.js·人工智能·spring boot·后端
芭拉拉小魔仙8 小时前
Vue 2 门诊收费系统中的医保结算流程设计与实践
前端·javascript·vue.js
moonrailgun8 小时前
用 Node.js 复刻 Codex Astra 的终端星光
前端·javascript·算法
默_笙8 小时前
💫 给金鱼建图书馆(下):Milvus 向量数据库,让 AI 拥有长期记忆
前端·javascript
liangshanbo12159 小时前
手写 Function.prototype.call 与 Function.prototype.apply 面试题满分答案
开发语言·javascript·原型模式
CoderYanger10 小时前
前端基础——JavaScript(WebAPI)(下篇)
java·开发语言·前端·javascript·程序人生·面试·职场和发展
JunjunZ11 小时前
Naive UI 虚拟级联选择器适配 Element Plus 风格
前端·javascript·vue.js
用户3028225306813 小时前
别让 Agent 被 Webhook 叫醒就开工:实现一个幂等启动层
javascript
万少14 小时前
等不到 Apple 的折叠 iPhone,我用 DeepV4.1Flash + workBuddy 一句话自己造了一台
前端·javascript·后端