用node写后台接口 (后台管理系统)

第一步 先下载express 

- npm install express -S -

引入express  创建服务器  

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

第二步 连接数据库

连接数据库需要下载  mysql

npm install mysql -S -

然后引入mysql 

// 创建数据库连接
const mysql = require('mysql')
const conn = mysql.createConnection({
    host:'localhost',
    user:'root',
    password:'',
    database:'test'
})

接下来就开始做接口了

先获取数据

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

字码完后 先运行看看

输入API接口 

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

OK 茶喝完了我们继续 

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

不多比比 看代码

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

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

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

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

接下来我们做删除

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

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

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

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

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

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

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

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

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

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

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

更新后如下 

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

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

猜你喜欢

转载自blog.csdn.net/Xl4277/article/details/82389081