はじめに
デフォルトのAzure Funtionではasync/awaitが使えません。Node.jsのバージョンがv6.5.0だからです。ですが、設定変更すればAzure Funtionでasync/awaitを使えます。Callback地獄から解放されます。
ただし、今回の手順は12月15日時点でプレビューの機能を使います。ご注意ください。
手順
async/awaitを使うためには次の設定変更が必要です。
- Runtime versionをBetaに変更
- 環境変数「WEBSITE_NODE_DEFAULT_VERSION」を8.5.0に変更
動作確認
v6.5.0だとasyncの箇所がエラーになります。
v8.5.0に切り替えるとasync/awaitを解釈します。asyncの部分がエラーになりません。sleepにawaitをつけていないと、10秒待たずに次の処理に進みます。
参考:ES2017 async/await で sleep 処理を書く
sleepにawaitをつけると、10秒待ってから次の処理に進みます。async/awaitしてますね。すばらしい!!