ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

node+mysql实现后端简易数据接口

2020-02-24 16:01:16  阅读:509  来源: 互联网

标签:node function err res req 接口 let mysql query


const express = require('express');  //调用模块 const app = express(); const server = app.listen(3000,function(){console.log('服务启动成功!');}); const io = require('socket.io')(server); const mysql  = require('mysql');   app.all('*', function(req, res, next) {   res.header("Access-Control-Allow-Origin", "*");   res.header("Access-Control-Allow-Headers", "X-Requested-With");   res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");   res.header("X-Powered-By",' 3.2.1')   res.header("Content-Type", "text/plain");   next(); }); io.on('connection',function ( socket ) {      console.log('连接成功');     setInterval( ()=>{       socket.emit('sendMsg',sendMsg())     },1000);     function sendMsg(){       return (Math.floor( Math.random()*100 )) + '-from server.';     }  });
const connection = mysql.createConnection({        host     : 'localhost',          user     : 'root',                 password : 'root',          port     : '3306',                      database : 'ngfw'  });  connection.connect();
// var WebSocketServer = require('ws').Server, // wss = new WebSocketServer({ port: 666 }); // wss.on('connection', function (ws) { //         console.log('success') //     var cont ; //     ws.on('message', function (message) { //         console.log(message,'wes'); //         cont = message; //         cont += 'from server'; //         ws.send(cont); //     }); //     setInterval( ()=>{ //         var rand = Math.round( Math.random()*100 ); //         ws.send(rand+'-from server'); //     },1000) // });  //用户管理
 //验证查询数据是否存在 function allCheck( username ) {    let sql  =  'select * from usermanager where username = ? ' , queryall = [username];     return new Promise((resove ,reject)=>{       connection.query(sql , queryall , function (err , result) {          if(err){           console.log('查询失败!');           return;         }else{           if( result.length == 0 ){             resove( false );           }else{             resove(  true );           }         }        });     });  }; app.get('/usermanager', function (req, res) {     let sql = '' ,queryParams = [];    if( req.query.type != undefined && (  req.query.type == '管理员' ||  req.query.type == '普通用户') ){     sql = 'SELECT * FROM usermanager where usertype = ?',queryParams = [req.query.type];    }else{     sql = 'SELECT * FROM usermanager';    }; //查 connection.query(sql,queryParams,function (err, result) {     if(err){       console.log('[SELECT ERROR] - ',err.message);       return;     }else{       console.log('后台数据查寻成功!');       res.send(result);     }       }); }); let count = 0;   app.get('/usermanager/add', async function (req, res) {      count+=1;     let sf = count % 2 == 0 ? '管理员' : '普通用户';     let reqs =  {username:'eth'+count , usertype:sf,userdesc:sf,vaddress:'192.168.1.'+count,otherinfo:'admin',status:false};     let  addSql = `INSERT INTO usermanager(username,usertype,userdesc,vaddress,otherinfo,status) VALUES(?,?,?,?,?,?)`;     let hasNum = await allCheck( reqs.username );     if( hasNum ){        res.send('用户已经存在,添加失败');        return;     }else{       let  addSqlParam  = Object.values(reqs);       connection.query(addSql,addSqlParam,function(err,result){         if(err){           console.log(err);           res.send('error add');return;         }else{           res.send('添加成功');           return count;         }       })     }     }); app.get('/usermanager/update', async function (req,res) {    if(! req.query.hasOwnProperty('username') ){     res.send('传入参数为空!');     return;   };   let tmp = req.query;   let update = ` UPDATE  usermanager SET usertype  = ?, userdesc = ?, vaddress = ? ,otherinfo = ? ,status = ? WHERE username = ?`;   let updateParam = [ tmp.usertype ,tmp.userdesc,tmp.vaddress,tmp.otherinfo,tmp.status,tmp.username];   let  hasContains = await allCheck(tmp.username);   if( hasContains ){     connection.query( update , updateParam , function (err,result) {        if(err){         res.send('更新失败'+err);         return;       }else{         res.send('更新成功!');       }      });   }else{     res.send('更新用户不存在');   }  });
function  deleteData( param ){   app.get('/usermanager/'+param.types, async function (req,res) {      if( req.query.hasOwnProperty('username')){       }else{         return;       }       let delSql = ` DELETE FROM  ${param.table}  WHERE username = ? `, delParams = [ req.query.username ];       let hasContains = await allCheck(req.query.username);       if( hasContains ){         connection.query(delSql , delParams, function (err ,result) {            if(err){             res.send('删除失败',err);             return;           }else{             res.send('删除成功!');           }          });       }else{         console.log(' user no found')         res.send('删除用户不存在!')       }     }); } deleteData({   types:'delete',   table:'usermanager' });
app.post('/usermanager/allgroup',function (req,res) {    console.log('ssss');     let sql = `SELECT * FROM allgroup`;     connection.query(sql,function (err,result){          if(err){           return;         }         res.send( JSON.stringify(result) );      })  })

标签:node,function,err,res,req,接口,let,mysql,query
来源: https://www.cnblogs.com/lkkk/p/12357302.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有