zoukankan      html  css  js  c++  java
  • 用node写后台接口 (后台管理系统)

    第一步 先下载express 

    - npm install express -S -

    引入express  创建服务器  

    1.  
      const express = require('express')
    2.  
      const app = express()
    3.  
      app.listen(5000, ()=>{
    4.  
      // 打印一下
    5.  
      console.log('http://127.0.0.1:5000')
    6.  
      })

    第二步 连接数据库

    连接数据库需要下载  mysql

    npm install mysql -S -

    然后引入mysql  另外req.body需要对表单数据进行解析 所以还需引入body-parser

    1.  
      // 创建数据库连接
    2.  
      const mysql = require('mysql')
    3.  
      const conn = mysql.createConnection({
    4.  
      host:'localhost',
    5.  
      user:'root',
    6.  
      password:'',
    7.  
      database:'test'
    8.  
      })
    9.  
      // 祖册 解析表单的body-parser
    10.  
      const bodyParser = require('body-parser')
    11.  
      app.use(bodyParser.urlencoded({extended:false}))

     

    接下来就开始做接口了

    先获取数据

    1.  
      // 获取所有的数据
    2.  
      app.get('/api/getheros',(req,res) => {
    3.  
      // 定义SQL语句
    4.  
      const sqlStr = 'select * from text where isdel=0'
    5.  
      conn.query(sqlStr,(err,results) => {
    6.  
      console.log(results)
    7.  
      if(err) return res.json({err_code:1,message:'获取失败',affectedRows:0})
    8.  
      res.json({
    9.  
      err_code:0,message:results,affectedRows:0
    10.  
      })
    11.  
      })
    12.  
      })

    字码完后 先运行看看

    输入API接口 

    欧了,我们第一步 获取数据 也算完成了  喝杯茶~~~~

    OK 茶喝完了我们继续 

    接下来我们要做的是根据ID获取对应ID的数据

    不多比比 看代码

    1.  
      // 根据ID 获取相关数据
    2.  
      app.get('/api/gethero',(req,res) => {
    3.  
      const id = req.query.id
    4.  
      const sqlStr = 'select * from text where id = ?'
    5.  
      conn.query(sqlStr,id,(err,results) => {
    6.  
      if(err) return res.json({err_code:1,message:'获取数据失败',affectedRows:0})
    7.  
      if(results.length !== 1) return res.json({err_code:1,message:'数据不存在',affectedRows:0})
    8.  
      res.json({
    9.  
      err_code:0,
    10.  
      message:results[0],
    11.  
      affectedRows:0
    12.  
      })
    13.  
      })
    14.  
      })

    ..........................................................

    我们再来试一下 比如我们传一个 id=1

    哎呀呀 也是非常顺利呀 对应的数据获取到了 OK 缓一缓

    接下来我们做删除

    1.  
      // 根据ID 删除数据
    2.  
      app.get('/api/delhero',(req,res) => {
    3.  
      const id = req.query.id
    4.  
      const sqlStr = 'update text set isdel = 1 where id=?'
    5.  
      conn.query(sqlStr,id,(err,results) => {
    6.  
      if(err) return res.json({err_code:1,message:'删除英雄失败',affectedRows:0})
    7.  
      if(results.affectedRows !== 1) return res.json({err_code:1,message:'删除英雄失败',affectedRows:0})
    8.  
      res.json({err_code:0,message:'删除英雄成功',affectedRows:results.affectedRows})
    9.  
      })
    10.  
      })

    OK 删除成功 我们在看看本地数据库 里

    欧了  数据库里面变样了 软删除成功

    然后我们再来完成添加的功能 看代码

    1.  
      // 添加数据
    2.  
      app.post('/api/addhero',(req,res) => {
    3.  
      const hero = req.body
    4.  
      console.log(hero)
    5.  
      const sqlStr = 'insert into text set ?'
    6.  
      conn.query(sqlStr,hero,(err,results) => {
    7.  
      if(err) return res.json({err_code:1,message:'添加失败',affectedRows:0})
    8.  
      if(results.affectedRows !== 1) return res.json({err_code:1,message:'添加失败',affectedRows:0})
    9.  
      res.json({err_code:0,message:'添加成功',affectedRows:results.affectedRows})
    10.  
      })
    11.  
      })

    写入数据 我们可以看到再次成功了 

    可以看到 数据库里面的数据也添加成功了

    还有最后一个  修改的功能  需要获得修改后的数据 

    1.  
      app.post('/api/updatehero',(req,res) => {
    2.  
      const sqlStr = 'update text set ? where id = ?'
    3.  
      conn.query(sqlStr,[req.body,req.body.id],(err,results) => {
    4.  
      if(err) return res.json({err_code:1,message:'更新英雄失败',affevtedRows:0})
    5.  
      //影响行数不等于1
    6.  
      if(results.affectedRows !== 1) return res.json({err_code:1,message:'更新的英雄不存在',affectedRows:0})
    7.  
      res.json({err_code:0,message:'更新成功',affectedRows:results.affectedRows})
    8.  
      })
    9.  
      })

    我们可以看到 我们修改的id为3  下面一看得到 更新成功 

    再来看看数据库里的数据 这是更新前的

    更新后如下 

    美滋滋  OKOKOK  追后一步搞完鸟  GG 

    OK 今天我们就做到这里了 后台管理系统的接口差不多就这么多 本宝宝也是刚入手 有什么错的地方 不全的地方 谢谢各位大牛补充

    实现后的样子

  • 相关阅读:
    破解Excel写密码保护方法
    【收藏推荐】JavaScript 秘密花园
    Flask框架第六篇.Flask中的蓝图和特殊装饰器
    Flask框架第四篇.Flask 中的 请求Request和session
    Flask框架第三篇.Flask 中的 Response
    Flask框架第八篇.请求上下文
    Flask框架第一篇.Flask框架基础
    Flask框架第二篇.Flask中的配置
    Flask框架第五篇.Flask 中的路由
    Flask框架第七篇.CBV和Flasksession
  • 原文地址:https://www.cnblogs.com/1549983239yifeng/p/14234910.html
Copyright © 2011-2022 走看看