ラムダ関数でHTTP要求を実行しようとすると、以下のGETを実行していないようラムダ関数で働いていないのGet:は、HTTPは
var request = require("request");
var myMonzoBalance;
request({
uri: "https://api.monzo.com/balance?account_id=acc_XXXXXXXXX",
method: "GET",
headers: {'Authorization': 'Bearer XXXXXXX'}
}, function(error, response, body) {
myMonzoBalance = JSON.parse(body).balance;
console.log(myMonzoBalance);
});
console.log(myMonzoBalance);
コードがいったんmyMonzoBalanceの値は未定義になります実行される。
実際に、myMonzoBalanceにリクエスト関数内の値を渡そうとすると、違いはありません。未定義です。
ターミナルで実行すると、上記のコードは正常に動作します。また、同じlambda関数のライブラリ内にnode_modulesがあります。
これがなぜ起こっているのかについてのアイデアはありますか?
多くの感謝!
コールバック関数関数(error、response、body)では、 "console.log(body)"の結果を投稿できるかどうかを確認するため、 "JSON.parse(body).balance"実際に存在する? – MadWard