node实现简单的增删改查接口实例代码


Posted in Javascript onAugust 22, 2019

node实现简单的增删改查接口的全部代码如下:

// 数据存储在users.json文件中
const express = require("express");
const fs = require("fs");
const cors = require("cors");
const bodyParser = require("body-parser");
const app = express();

app.use(cors({ origin: "*" })); // fix 跨域
app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded

// 新增
app.post("/addUser", (req, res) => {
 fs.readFile("./users.json", "utf8", (err, data) => {
  if (err) {
   throw err;
  }
  data = data ? JSON.parse(data) : [];
  data.push(req.body);
  fs.writeFile("./users.json", JSON.stringify(data), err => {
   if (err) throw err;
   res.end();
  });
 });
});

// 删除
app.delete("/delUser/:id", (req, res) => {
 const id = req.params.id;
 fs.readFile("./users.json", "utf8", (err, data) => {
  data = JSON.parse(data) || [];
  const saveData = data.filter(item => item.id != id);
  fs.writeFile("./users.json", JSON.stringify(saveData), err => {
   if (err) throw err;
   res.end();
  });
 });
});

// 修改
app.put("/update/:id", (req, res) => {
 const id = req.params.id;
 const body = req.body;
 fs.readFile(__dirname + "/" + "users.json", "utf8", (err, data) => {
  const userList = (data && JSON.parse(data)) || [];
  const index = userList.findIndex(item => item.id == id);
  userList[index] = { ...userList[index], ...body };
  fs.writeFile("./users.json", JSON.stringify(userList), err => {
   if (err) throw err;
   console.log("修改");
   res.end();
  });
 });
});

// 列表查询
app.get("/listUsers", function(req, res) {
  fs.readFile(__dirname + "/" + "users.json", "utf8", function(err, data) {
   console.log(data);
   res.end(data);
  });

});


app.listen(8081, function() {
 console.log("访问地址: http://localhost:8081");
});

以上就是全部相关代码,大家可以测试下,感谢大家对三水点靠木的支持。

Javascript 相关文章推荐
js调试工具 Javascript Debug Toolkit 2.0.0版本发布
Dec 02 Javascript
JavaScript在XHTML中的用法详解
Apr 11 Javascript
jQuery中index()方法用法实例
Dec 27 Javascript
js实现精确到秒的倒计时效果
May 29 Javascript
JS实现添加,替换,删除节点元素的方法
Jun 30 Javascript
JS实现太极旋转思路分析
Dec 09 Javascript
ES6入门教程之Class和Module详解
May 17 Javascript
vue-router实现tab标签页(单页面)详解
Oct 17 Javascript
解决Vue+Electron下Vuex的Dispatch没有效果问题
May 20 Javascript
JS实现容器模块左右拖动效果
Jan 14 Javascript
详解Vue串联过滤器的使用场景
Apr 30 Javascript
react 项目中引入图片的几种方式
Jun 02 Javascript
微信小程序实现上传图片裁剪图片过程解析
Aug 22 #Javascript
ES6基础之 Promise 对象用法实例详解
Aug 22 #Javascript
ES6基础之数组和对象的拓展实例详解
Aug 22 #Javascript
node express使用HTML模板的方法示例
Aug 22 #Javascript
vue中使用v-model完成组件间的通信
Aug 22 #Javascript
layui动态表头的实现代码
Aug 22 #Javascript
深入理解令牌认证机制(token)
Aug 22 #Javascript
You might like
如何在PHP中使用Oracle数据库(5)
2006/10/09 PHP
php ignore_user_abort与register_shutdown_function 使用方法
2009/06/14 PHP
Look And Say 序列php实现代码
2011/05/22 PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
2013/12/22 PHP
通过JAVAScript实现页面自适应
2007/01/19 Javascript
jQuery实现长文字部分显示代码
2013/05/13 Javascript
js二维数组定义和初始化的三种方法总结
2014/03/03 Javascript
javaScript使用EL表达式的几种方式
2014/05/27 Javascript
探讨JavaScript中的Rest参数和参数默认值
2015/07/29 Javascript
jQuery实现select模糊查询(反射机制)
2017/01/14 Javascript
jQuery插件zTree实现删除树节点的方法示例
2017/03/08 Javascript
对mac下nodejs 更新到最新版本的最新方法(推荐)
2018/05/17 NodeJs
Bootstarp在pycharm中的安装及简单的使用方法
2019/04/19 Javascript
从Node.js事件触发器到Vue自定义事件的深入讲解
2020/06/26 Javascript
Python 备份程序代码实现
2017/03/06 Python
Python 装饰器深入理解
2017/03/16 Python
Python入门_条件控制(详解)
2017/05/16 Python
pow在python中的含义及用法
2019/07/11 Python
Python学习笔记之集合的概念和简单使用示例
2019/08/22 Python
Python数据可视化:顶级绘图库plotly详解
2019/12/07 Python
Python中sorted()排序与字母大小写的问题
2020/01/14 Python
无需JS和jQuery代码实现CSS3鼠标浮动放大图片
2016/11/21 HTML / CSS
英国男士时尚网站:Dandy Fellow
2018/02/09 全球购物
体育老师的教学自我评价分享
2013/11/19 职场文书
幼儿园小班教学反思
2014/02/02 职场文书
学生感冒英文请假条
2014/02/04 职场文书
人事部经理岗位职责
2014/03/07 职场文书
安全生产活动月方案
2014/03/09 职场文书
婚礼答谢宴主持词
2014/03/14 职场文书
财务负责人任命书
2014/06/06 职场文书
名人演讲稿范文
2014/09/16 职场文书
作风建设年活动实施方案
2014/10/24 职场文书
装饰技术负责人岗位职责
2015/04/13 职场文书
2015年乡镇卫生院妇幼保健工作总结
2015/05/19 职场文书
解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)
2021/06/26 MySQL
Python面试不修改数组找出重复的数字
2022/05/20 Python