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

相关推荐
BioRunYiXue1 分钟前
Nature Methods:CellVoyager 自主 AI 智能体开启生物数据分析新时代
大数据·开发语言·前端·javascript·人工智能·数据挖掘·数据分析
网络点点滴1 小时前
Vue3中Suspense的使用
前端·javascript·vue.js
MingT 明天你好!1 小时前
trae中安装mcp报Cannot find package/ERR_MODULE_NOT_FOUND问题
node.js·trae
酉鬼女又兒2 小时前
零基础快速入门前端Web存储(sessionStorage & localStorage)知识点详解与蓝桥杯考点应用(可用于备赛蓝桥杯Web应用开发)
开发语言·前端·javascript·职场和发展·蓝桥杯·html
angerdream2 小时前
最新版vue3+TypeScript开发入门到实战教程之组件通信之二
javascript·vue.js
小只笨笨狗~2 小时前
解决objectSpanMethod与expand共存时展开后表格错位问题
开发语言·javascript·ecmascript
海浪浪2 小时前
Symbol 产生的背景以及应用场景
前端·javascript
名字很费劲2 小时前
vue项目,刷新后出现404错误,怎么解决
前端·javascript·vue·404
前端小咸鱼一条3 小时前
15.Symbol类型
前端·javascript·vue.js
RePeaT4 小时前
npm 依赖版本号中 `^` 和 `~` 到底有什么区别?
前端·javascript·npm