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中的工作方式,没有找到其他好的模式。所以考虑到这一点,谢谢!在链接中,我如何删除链接?如果希望事情按顺序发生,您将始终必须链接承诺或将其包装在回调中。您可以尝试异步等待它使代码更具可读性,但异步函数也将返回承诺