这是查询数据库时响应的正确方法吗?

时间:2015-04-01 08:24:48

标签: node.js express node-orm2

我使用express和MySql和node-orm2。

有一个GET请求从数据库中获取一些数据。

var loginFormChecker = function (phone, pwd, cb) {
    var ret = {};

    userBaseModel.exists({
        phone: phone,
        password: pwd
    }, function (err, exists) {
        if (err) {
            // database error
            ret = new returnData({
                error: error.database,
                type: 0
            });
        } else {
            ret = new returnData({
                data: exists,
                type: 1
            });
        }

        cb(ret);
    });
};

router.route('/login')
.get(function (req, res) {
    var query = req.query;

    var output = function (ret) {
        if (ret) {
            res.send(ret);
        } else {
            res.status(500).send('something broken!');
        }
    };

    userService.loginFormChecker(query.p, query.k, output);
});

我将输出函数传递给loginFormChecker,并在查询数据的回调中调用它。

我不知道这是否是一种正确的方法。有没有更好的方法,也许承诺或什么?

感谢。

0 个答案:

没有答案