使用nodejs开发前后端分离式接口+数据库访问

一、数据库连接

1.nodejs数据库连接

var mysql = require('mysql'); //导入数据库模块

var connection = mysql.createConnection({

host : '192.168.xx.xx',//数据库地址,本地数据库可使用localhost或者127.0.0.1

user : 'root',  //数据库账户名

password : 'root',  //数据库密码

database : 'test' });  //数据库名称

connection.connect();连接数据库

connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) { if (error) throw error; console.log('The solution is: ', results[0].solution); });//数据库执行语句,增删改查都是用query();

2.实际使用中 query很容易出现访问异常,建议使用数据池

var mysql = require('mysql'),
env = {
host : '192.168.xx.xx',
user : 'root',
password : 'root',
database : 'test'
};

pool  = mysql.createPool(env);
query = function (sql, callback){
this.getConnection(function (err, connection){
connection.query(sql, function (){
callback.apply(connection, arguments);
connection.release();
});

})
}.bind(pool);

pool.query('SELECT 1 + 1 AS solution'function (errorresultsfields) { if (error) throw errorconsole.log('The solution is: 'results[0].solution)});

二、接口开发
我开发的接口为get请求,参数直接通过url传递
app.get('/test',function(req,res){
var params = url.parse(req.url, true).query;
var id='\"'+params.id+'\"';
var sql='SELECT COUNT(*) FROM test WHERE id='+id;
pool.query(sql, function(err, rows, fields) {
if (err) throw err;
res.jsonp(rows);
res.end();
});
});

接口请求方式:

var ajax = new XMLHttpRequest();
var d = new Date();
var date = d.getDate();
ajax.open('get','http://192.168.xx.xx:端口号/test?id='+id);
ajax.send();
ajax.onreadystatechange = function () {
if (ajax.readyState==4 &&ajax.status==200) {
var messages=ajax.responseText;
}
};





转载于:https://www.cnblogs.com/huixing-zxy/p/11200244.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值