Это правильный способ ответа при запросе базы данных?

Я использую экспресс и 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 ответов

Другие вопросы по тегам