2017-06-05 12 views
0

私は最後の数日間、ノードモジュールからインポートしている関数からデータを取得するためにコールバックを実行する方法を理解し、それを空白関数でcontext.resとともに使用するのに時間を費やしました。ノードモジュールからインポートされた関数のAzure関数で関数コールバックを行うにはどうすればよいですか?

私はこれを頭に入れても十分にコールバックを理解していないか、完全に基盤を外しています。

module.exports = function (context, req) { 
 

 
var QuickBooks = require('node-quickbooks') 
 
var qboAuth = require('./config') 
 
var consumerKey = qboAuth.consumerKey 
 
var consumerSecret = qboAuth.consumerSecret 
 
var oauthToken = qboAuth.token 
 
var oauthTokenSecret = qboAuth.tokenSecret 
 
var realmId = qboAuth.realmId 
 

 
    var qbo = new QuickBooks(consumerKey, 
 
         consumerSecret, 
 
         oauthToken, 
 
         oauthTokenSecret, 
 
         realmId, 
 
         false, // use the sandbox? 
 
         true); // enable debugging? 
 
       
 
    
 
    qbo.getAccount(req.query.id, function(err, account) { 
 
      context.log(account) 
 
      
 
    }); 
 
    
 
context.res = { 
 
    body: account 
 
} 
 
     
 

 
context.done() 
 
}

のでqbo.getAccount()関数でcontext.log(アカウント)=今まで私はcontext.resへの出力にこれを取得することはできません使用することを意味しますが、それを通して、細かい出力{}。

これはAzure関数サンドボックスで実行すると複雑になると思いますが、わかりません。

誰かが私を正しい方向に向けることができますか?

おかげで、

答えて

0

ディオン機能getAccount()を使用すると、コールバック式にAzureの機能の割り当てと完全な機能を移動させることができ、非同期関数でなければなりません。例えば。

qbo.getAccount(req.query.id, function(err, account) { 
    context.log(account); 
    context.res = { 
     body: account 
    } 
    context.done() 
    } 
); 
+0

ゲーリーに返信してくれてありがとうございました! 私はこれを以前に行っていましたが、うまくいかなかったのですが、入力変数の1つに誤植がありました。再度、感謝します –

関連する問題