使用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请求),你将看到相应的响应。

相关推荐
三84420 分钟前
路由策略/控制 配置双点双向路由重发布
服务器·前端·javascript
柒和远方3 小时前
V043:BFF 层流式输出:从前端直连到生产级流式网关的架构演进
javascript·架构·node.js
用户938515635073 小时前
SSE 流式输出的工程化拐点——为什么你需要一个 BFF 层
javascript·人工智能·全栈
不简说4 小时前
JS 代码技巧 vol.4 — 10 个异步并发控制,Promise.all 这帮兄弟的踩坑实录
前端·javascript·面试
Listen·Rain7 小时前
Vue3中组件间通信详解
前端·javascript·vue.js
Listen·Rain7 小时前
Vue3中customRef详解
前端·javascript·vue.js
香芋芋圆7 小时前
国内常用坐标系全解析与WebGIS框架实战指南(Cesium/Mapbox/Leaflet避坑手册)
前端·javascript
sugar__salt7 小时前
Document 切割:RAG 知识库数据预处理实战
javascript·langchain·embedding·js·rag·cheerio
小粉粉hhh7 小时前
React(三)——Redux
前端·javascript·react.js
daols887 小时前
vxe-table 导出自定义插槽模板内容
前端·javascript·vue.js·vxe-table