初学node,想用node写一个api,一直报这个错:
connection.query(db.sql.insert,[params.account, params.password],function(err, result){
^
TypeError: Cannot read property 'query' of undefined
不知道是什么问题
代码如下:
api.js:
const express = require('express');
var router = express.Router();
const mysql = require('mysql');
var db = require('./db');
var pool = mysql.createPool(db.config);
// 添加用户
router.get('/user/add',function(req, res, next){
// 从连接池获取连接
pool.getConnection(function(err, connection){
// 获取前台页面传过来的参数
var params = req.query || req.params;
console.log(params);
connection.query(db.sql.insert,[params.account, params.password],function(err, result){
if(result){
result={
code:200,
msg:'add success!'
}
}
console.log('add');
//以json形式把操作结果返回前台页面
returnResponse(res, result);
connection.release();
});
})
})
db.js:
module.exports={
config: {
host:'localhost',
user:'root',
password:'123',
database:'blog'
},
sql: {
insert:'INSERT INTO blog (account,password) VALUES (?,?);'
}
}
它说
connection
是未定义的,所以你可能没获取到连接,你把pool.getConnection
回调里的err
判空然后打出来看一下。