Javascript 如何在Node.js中调用多个API同步

Javascript 如何在Node.js中调用多个API同步,javascript,node.js,azure,azure-functions,Javascript,Node.js,Azure,Azure Functions,下面是我的代码 var Connection = require('tedious').Connection; var Request = require('tedious').Request; var config = { userName: 'XXXX', password: 'XXXX', server: 'XXXX', options: { database: 'XXXX', encrypt: true } }

下面是我的代码

var Connection = require('tedious').Connection;
var Request = require('tedious').Request;

var config = {
    userName: 'XXXX',
    password: 'XXXX',
    server: 'XXXX',
    options: {
        database: 'XXXX',
        encrypt: true
    }
}

var connection = new Connection(config);

connection.on('connect', function (err) {
    if (err) {
        console.log(err);
    }
    else {
        // // queryDatabase();
    }
}
);
由于代码的异步执行,我的代码中存在巨大的链接。我发现了,但不要把它们用于生产目的


如何调用“连接”同步并继续代码的顺序流?在Node.js中实现代码顺序执行的最佳方法是什么?

是否需要这样做

var config = {
    userName: 'XXXX',
    password: 'XXXX',
    server: 'XXXX',
    options: {
        database: 'XXXX',
        encrypt: true
    }
}

var connection = new Connection(config);

function isConnected(){
    return new Promise(function(resolve, reject){
            connection.on('connect', function (err) {
            if (err) {
                reject(err);
            }
            else {
                resolve(true);
            }
        }
    );
    })
}

isConnected().then(function(){
    // // queryDatabase();
})

你不能继续正常的流动。相反,您必须在回调函数或从那里调用的函数中继续该流。这就是异步编程在nade.js.node.js中的工作方式,没有找到其他好的模式。所以考虑到这一点,谢谢!在链接中,我如何删除链接?如果希望事情按顺序发生,您将始终必须链接承诺或将其包装在回调中。您可以尝试异步等待它使代码更具可读性,但异步函数也将返回承诺