Nodejs API服务方法未将SQL查询响应返回到控制器承诺

时间:2019-07-12 00:13:50

标签: javascript mysql node.js api express

所以我正在创建一个api,它将返回sql数据库中的雇员,并且我已经设置了控制器和服务。我遇到的问题是,在执行sql查询之后,响应未返回到要发送到前端的控制器。控制器中的promise不会从服务方法调用中获取数据,因此不会返回任何数据。我知道可以通过回调解决此问题,但是我对如何用我的代码结构实现它感到有些困惑。

我的控制器是:

function getAll(req, res, next) {
    employeeService.getAll()
        .then(users => res.json(users))
        .catch(err => next(err));
}

我的employeeService方法是:

async function getAll() {
  database.query('SELECT * FROM employee', (err, results) => {
    return results;
  });
}

0 个答案:

没有答案