nodejs中express框架实现增删改查接口

简介: nodejs中express框架实现增删改查接口

nodejs中的express接口的实现

我们在学习后端的时候会接触很多框架,比如说python中django框架,也好比说我们今天学的nodejs中的express框架,废话不多说,上代码。

渲染分页接口

router.get("/dispute", async (req, res) => {
  // 获取查询参数 pageSize 和 currentPage
  let { pageSize, currentPage } = req.query;
  // 将查询参数转换为整数类型
  pageSize = parseInt(pageSize, 10);
  currentPage = parseInt(currentPage, 10);
  // 使用 disputeModel 计算数据库中的总文档数
  const total = await disputeModel.countDocuments();
  // 使用 disputeModel 查询数据库,进行分页操作
  const disputeData = await disputeModel
    .find()
    .skip((currentPage - 1) * pageSize)
    .limit(pageSize);
  // 向客户端发送包含成功状态码、成功消息、争议数据和总数的响应
  res.send({
    code: 200,
    msg: "获取成功",
    disputeData, // 分页后的数据
    total, // 总文档数
  });
});

首先,它从请求的查询参数中获取pageSize和currentPage,并将它们转换为整数类型。

然后,它使用disputeModel来计算数据库中的总文档数,并将结果存储在total变量中。

接下来,它使用disputeModel查询数据库,通过使用skip和limit方法进行分页,跳过前面的页数并限制每页的数据数量。

最后,它发送一个包含成功状态码、成功消息、争议数据和总数的响应给客户端。

现在是添加接口

// 添加接口,处理客户端对于 "/adddispute" 路径的 POST 请求
router.post('/adddispute', async (req, res) => {
  // 从请求的正文中获取数据并存储在变量 body 中
  let body = req.body;
  try {
    // 使用 disputeModel 创建一条新的数据,将请求的数据保存到数据库中
    await disputeModel.create(body);
    // 向客户端发送一个包含成功状态码和成功消息的响应
    res.send({
      code: 200,
      msg: '添加成功'
    });
  } catch (error) {
    console.error('添加失败:', error);
    // 如果创建失败,捕获错误并向客户端发送一个包含错误状态码和错误消息的响应
    res.status(500).send({
      code: 500,
      message: '添加失败'
    });
  }
});

首先,它从请求的正文中获取数据,并将其存储在变量body中。

然后,它尝试使用disputeModel来创建一条新的数据,将请求的数据保存到数据库中。

如果创建成功,它向客户端发送一个包含成功状态码和成功消息的响应。

如果创建失败,它会捕获错误并向客户端发送一个包含错误状态码和错误消息的响应。

这段代码的作用是在数据库中添加新的数据信息。如果成功,返回200状态码和"添加成功"的消息;如果失败,返回500状态码和"添加失败"的消息。

修改接口

// 更新接口,处理客户端对于 "/updispute" 路径的 POST 请求
router.post('/updispute', async (req, res) => {
  // 从请求的正文中获取数据并存储在变量 body 中
  let body = req.body;
  try {
    // 使用 disputeModel 更新数据库中的数据
    await disputeModel.updateOne(body);
    // 向客户端发送一个包含成功状态码和成功消息的响应
    res.send({
      code: 200,
      msg: '修改成功'
    });
  } catch (error) {
    console.error('修改失败:', error);
    // 如果更新失败,捕获错误并向客户端发送一个包含错误状态码和错误消息的响应
    res.status(500).send({
      code: 500,
      message: '修改失败'
    });
  }
});

首先,它从请求的正文中获取数据,并将其存储在变量body中。

然后,它尝试使用disputeModel来更新数据,将请求的数据更新到数据库中。这里需要注意的是,updateOne()方法接受一个对象作为参数,该对象包含要更新的数据的筛选条件和要进行的更新操作。

如果更新成功,它向客户端发送一个包含成功状态码和成功消息的响应。

如果更新失败,它会捕获错误并向客户端发送一个包含错误状态码和错误消息的响应。

这段代码的作用是在数据库中更新数据信息。如果成功,返回200状态码和"修改成功"的消息;如果失败,返回500状态码和"添加失败"的消息。

删除接口

//删除接口
router.delete('/deldispute/:id', async (req, res) => {
  let id = req.params.id;
  try {
    await disputeModel.deleteOne({ _id: id }); // 使用正确的字段名 '_id'
    res.send({
      code: 200,
      message: '删除成功'
    });
  } catch (error) {
    console.error('删除失败:', error);
    res.status(500).send({
      code: 500,
      message: '删除失败'
    });
  }
});

首先,它从请求的参数中获取id,并将其存储在变量id中。

然后,它尝试使用disputeModel来删除数据库中满足特定"_id"字段值的数据。在这里,我们使用deleteOne()方法来删除匹配的数据。

如果删除成功,它向客户端发送一个包含成功状态码和成功消息的响应。

如果删除失败,它会捕获错误并向客户端发送一个包含错误状态码和错误消息的响应。

这段代码的作用是根据提供的id从数据库中删除数据信息。如果成功,返回200状态码和"删除成功"的消息;如果失败,返回500状态码和"删除失败"的消息。

上述则是实现的增删改查接口,希望对您有帮助。



相关文章
|
6天前
|
Web App开发 JavaScript 前端开发
构建高效Web应用:Node.js与Express框架的深度整合
【9月更文挑战第28天】在现代Web开发领域,Node.js和Express框架的结合已成为打造高性能、易扩展应用的黄金组合。本文将深入探讨如何利用这一技术栈优化Web应用架构,提供具体实践指导,并分析其性能提升的内在机制。通过代码示例,我们将展示从基础搭建到高级功能的实现过程,旨在为开发者提供一条清晰的学习路径,以实现技术升级和项目效率的双重提升。
19 3
|
11天前
|
前端开发 JavaScript 安全
node登陆接口权限配置cookie-parser、express-session
本文介绍了在Node.js中使用express-session和cookie-parser实现登录接口的权限配置,包括验证码接口的生成和自定义中间件的创建,用于验证用户权限。
12 0
node登陆接口权限配置cookie-parser、express-session
|
11天前
|
JavaScript 前端开发
vue配合axios连接express搭建的node服务器接口_简单案例
文章介绍了如何使用Express框架搭建一个简单的Node服务器,并使用Vue结合Axios进行前端开发和接口调用,同时讨论了开发过程中遇到的跨域问题及其解决方案。
12 0
vue配合axios连接express搭建的node服务器接口_简单案例
|
6天前
|
JSON JavaScript 前端开发
构建高效Web应用:Node.js与Express框架的完美结合
【9月更文挑战第28天】在现代Web开发中,Node.js和Express框架的结合为创建高性能、易扩展的应用提供了强有力的支持。本文将深入探讨如何利用这两种技术构建一个简单但功能强大的Web服务,同时提供代码示例以加深理解。
|
8天前
|
JavaScript
NodeJs的安装
文章介绍了Node.js的安装步骤和如何创建第一个Node.js应用。包括从官网下载安装包、安装过程、验证安装是否成功,以及使用Node.js监听端口构建简单服务器的示例代码。
NodeJs的安装
|
7天前
|
存储 JavaScript 前端开发
Node 版本控制工具 NVM 的安装和使用(Windows)
本文介绍了NVM(Node Version Manager)的Windows版本——NVM for Windows的安装和使用方法,包括如何安装Node.js的特定版本、列出已安装版本、切换使用不同版本的Node.js,以及其他常用命令,以实现在Windows系统上对Node.js版本的便捷管理。
Node 版本控制工具 NVM 的安装和使用(Windows)
|
23天前
|
SQL JavaScript 数据库
sqlite在Windows环境下安装、使用、node.js连接
sqlite在Windows环境下安装、使用、node.js连接
|
19天前
|
JavaScript Linux 开发者
一个用于管理多个 Node.js 版本的安装和切换开源工具
【9月更文挑战第14天】nvm(Node Version Manager)是一个开源工具,用于便捷地管理多个 Node.js 版本。其特点包括:版本安装便捷,支持 LTS 和最新版本;版本切换简单,不影响开发流程;多平台支持,包括 Windows、macOS 和 Linux;社区活跃,持续更新。通过 nvm,开发者可以轻松安装、切换和管理不同项目的 Node.js 版本,提高开发效率。
|
2月前
|
缓存 JavaScript 安全
2022年最新最详细的安装Node.js以及cnpm(详细图解过程、绝对成功)
这篇文章提供了2022年最新最详细的Node.js和cnpm安装教程,包括步骤图解、全局配置路径、cnpm安装命令、nrm的安装与使用,以及如何管理npm源和测试速度。
2022年最新最详细的安装Node.js以及cnpm(详细图解过程、绝对成功)
|
8天前
|
JavaScript 前端开发 Linux