node.js - node在一个函数中连接完数据库拿到数据后,怎么把数据return出来?
PHP中文网
PHP中文网 2017-04-17 15:38:18
0
1
285

严格来说这个跟node没什么关系,是我不够了解回调函数。我想接受到get请求后引用一方法,在数据库中获得值后返回回来再send出去。
以前一直用的都是赋给一个全局变量,但这个肯定不是最好的办法啦

function select(id) {
    var result = null;
    var mysql      = require('mysql');
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'root',
      password : 'root'
    });
    connection.connect();
    connection.query("use mldn");
    connection.query( 
      'SELECT * FROM emp WHERE empno = ' + id, 
      function (err, results, fields) { 
        if (err) { 
          throw err; 
        } 
        connection.end(); 
        return results;
      } 
    );
    //下面是没用的
    //return results;
}

router.get('/user',function(req,res) {
    //我想在这里获得数据再传出去,但这样是失败的
    res.send(select(req.query.userid));
    res.end()
})
PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(1)
刘奇

Promise でカプセル化します。

リーリー

擬似コードはほぼこれと似ています。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート