使用 Node.js 构建用户管理 RESTful API

JavaScriptJavaScriptBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个项目中,你将学习如何使用Node.js和Express.js开发一个RESTful API。该项目涉及创建一个简单的用户管理系统,在其中你可以获取用户列表。

👀 预览

curl http://localhost:8080/list
## 输出:
## {"userlist":[{"id":"1","username":"zhangsan","password":"123456"},{"id":"2","username":"lilei","password":"456"},{"id":"3","username":"hanmeimei","password":"123"}]}

🎯 任务

在这个项目中,你将学习:

  • 如何设置一个Node.js项目并安装依赖项
  • 如何创建一个基本的Express.js服务器
  • 如何实现一个GET端点,从JSON文件中获取用户列表
  • 如何使用cURL测试API

🏆 成果

完成这个项目后,你将能够:

  • 理解RESTful API开发的基础知识
  • 设置一个Node.js项目并安装必要的依赖项
  • 创建一个简单的Express.js服务器
  • 实现一个GET端点,从JSON文件中检索数据
  • 使用cURL测试API

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/DOMManipulationGroup(["DOM Manipulation"]) javascript(("JavaScript")) -.-> javascript/ToolsandEnvironmentGroup(["Tools and Environment"]) javascript(("JavaScript")) -.-> javascript/NetworkingGroup(["Networking"]) javascript/DOMManipulationGroup -.-> javascript/dom_manip("DOM Manipulation") javascript/ToolsandEnvironmentGroup -.-> javascript/version_control("Version Control") javascript/NetworkingGroup -.-> javascript/http_req("HTTP Requests") javascript/NetworkingGroup -.-> javascript/json("JSON") javascript/NetworkingGroup -.-> javascript/api_interact("API Interaction") subgraph Lab Skills javascript/dom_manip -.-> lab-445684{{"使用 Node.js 构建用户管理 RESTful API"}} javascript/version_control -.-> lab-445684{{"使用 Node.js 构建用户管理 RESTful API"}} javascript/http_req -.-> lab-445684{{"使用 Node.js 构建用户管理 RESTful API"}} javascript/json -.-> lab-445684{{"使用 Node.js 构建用户管理 RESTful API"}} javascript/api_interact -.-> lab-445684{{"使用 Node.js 构建用户管理 RESTful API"}} end

设置项目

在这一步中,你将设置项目并安装必要的依赖项。

本题的初始代码已经提供。打开编码环境,目录结构如下:

├── index.js
├── users.json
├── package.json
├── package-lock.json

接下来,在终端中使用 npm install 命令下载依赖项,等待依赖项下载完成,然后使用 npm run dev 命令启动项目。

实现GET /list端点

在这一步中,你将实现GET /list端点以显示用户列表。

  1. 在项目目录中打开 index.js 文件。
  2. 在文件中找到TODO部分,并添加以下代码以实现GET /list端点:
//TODO
app.get("/list", function (req, res) {
  fs.readFile(
    path.resolve(__dirname, "./users.json"),
    "utf8",
    function (err, data) {
      data = JSON.parse(data);
      res.json(data);
    }
  );
});

这段代码读取 users.json 文件,解析JSON数据,并将其作为响应发送。

  1. 保存 index.js 文件。

测试GET /list端点

在这一步中,你将测试GET /list端点,以确保它能正常工作。

  1. 在实验环境中打开一个新的终端。
  2. 使用 curl 命令向 /list 端点发送一个GET请求:
curl http://localhost:8080/list

你应该会看到以下输出,这是来自 users.json 文件的JSON数据:

{"userlist":[{"id":"1","username":"zhangsan","password":"123456"},{"id":"2","username":"lilei","password":"456"},{"id":"3","username":"hanmeimei","password":"123"}]}

如果你看到了这个输出,说明GET /list端点工作正常。

恭喜你!你已经完成了这个项目,并实现了GET /list端点来显示用户列表。

✨ 查看解决方案并练习

总结

恭喜你!你已经完成了这个项目。你可以在LabEx中练习更多实验来提升你的技能。