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状态码和"删除失败"的消息。

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



相关文章
|
2天前
|
存储 JavaScript 中间件
❤Nodejs 第十二章(图片存储接口-本地)
【4月更文挑战第12天】在Node.js第十二章中,主要讲解了错误中间件的编写和multer中间件的使用。错误中间件需置于所有路由之后,用于捕获并处理错误,防止接口崩溃。示例代码展示了如何处理token解析失败的错误。接着介绍了multer,它是处理multipart/form-data数据,尤其是用于文件上传的中间件。通过`yarn add --save multer`安装,并引入到项目中。最终,成功实现了图片上传并返回了可访问的图片路径。
44 2
|
2天前
|
开发框架 JavaScript 安全
js开发:请解释什么是Express框架,以及它在项目中的作用。
【4月更文挑战第24天】Express是Node.js的Web开发框架,简化路由管理,支持HTTP请求处理。它包含中间件系统用于日志、错误处理和静态文件服务,集成多种模板引擎如EJS、Jade、Pug。框架还提供安全中间件提升应用安全,并具有良好的可扩展性,便于项目功能扩展和开发效率提升。
26 3
|
2天前
|
JSON JavaScript 前端开发
❤Nodejs 第九章(token身份认证和express-jwt的安装认识)
【4月更文挑战第9天】Node.js第九章介绍了Token身份认证,特别是JWT(JSON Web Token)作为跨域认证的解决方案。JWT由Header、Payload和Signature三部分组成,用于在客户端和服务器间安全传输用户信息。前端收到JWT后存储在localStorage或sessionStorage中,并在请求头中发送。Express-JWT是一个中间件,用于解析JWT。基本用法包括设置secret和algorithms。注意安全问题,避免混合使用不同算法以防止降级攻击。
44 0
|
2天前
|
数据可视化 JavaScript NoSQL
搭建接口平台YApi详解(含搭建node环境)
搭建接口平台YApi详解(含搭建node环境)
26 0
|
2天前
|
开发框架 JavaScript 中间件
深入探索Node.js的Express框架:使用与中间件详解
【4月更文挑战第30天】本文深入探讨了Node.js的Express框架,介绍了其作为Web开发的强大工具,主要聚焦于基本使用和中间件。Express是基于Node.js的Web应用框架,用于构建高效的应用和API。文章详细讲解了如何安装Express,创建简单应用,以及中间件的工作原理和应用,包括中间件的顺序、错误处理和挂载位置。此外,还提到了使用第三方中间件扩展功能。理解Express基础和中间件对于开发高质量Web应用至关重要。
|
2天前
初识express框架
初识express框架
|
2天前
|
存储 JavaScript API
❤Nodejs 第十三章(文件上传接口以及token添加)
【4月更文挑战第13天】Nodejs第十三章介绍了文件上传接口和Token添加。使用Multer库处理文件上传,设置存储引擎和静态文件目录,定义上传接口,支持单个文件上传。上传成功返回文件信息和访问路径。为解决静态文件访问需要Token认证的问题,更新expressjwt配置,排除包含uploads的路径,确保静态文件可正常访问。
38 2
|
2天前
|
JavaScript 中间件 API
node.js之express的基础知识
node.js之express的基础知识
|
2天前
|
开发框架 JavaScript 前端开发
【Node系列】Express 框架
Express.js 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,提供一系列强大的特性来帮助你创建各种 web 和移动设备应用。
36 2
|
2天前
|
移动开发 JavaScript 前端开发
为了学习vue3,安装nvm进行node的多版本管理
为了学习vue3,安装nvm进行node的多版本管理
21 2