MySQL 节点 JS 异步问题

MySQL Node JS Async Issues

我认为我在使用节点 js 实现从 mysql 数据库中的 table 获取所有行的函数时遇到了一些异步问题。我正在使用 node-mysql 模块。

我已经用谷歌搜索了这个,并尝试在 this question 上做已接受的答案,但仍然没有成功。它在 throw err 上告诉我 undefined is not a function。有人知道这里的问题是什么吗?

var express = require('express');
var mysql = require('mysql');
var router = express.Router();

router.get('/people', function(req, res, next) {
    getAllPeople(function(err, people) {
        res.json(people);
    });
});

function getAllPeople(cb) {
    var connection = mysql.createConnection({
        host     : 'localhost',
        user     : 'root',
        password : 'root',
        database : 'people'
    });
    connection.connect();
    connection.query('SELECT * from people', function(err, rows, fields) {
        connection.close();
        cb(err, rows);
    });
}
module.exports = router;

连接对象中没有定义close()方法。使用 connection.end()