Azure Functions (Node.js) で npm パッケージを追加して利用する方法 (コンソール利用)


Azure Functions の関数作成画面の「コンソール」を使ってお手軽に npm install する方法です。
今回は HTTP リクエストをする request をインストールしてみます。

追記: HTTP リクエストをするだけなら、標準モジュールの HTTP/HTTPS が使えます。npm で追加インストールする際に参考にしてくださいね。

更新(2021/9/22): 2021年秋版のアップデートを書きました。ここから下は古い情報です。


npm install をする

Azure Functions の関数作成画面の [コンソール] で以下コマンドを入力していきます。

> npm init --yes
> npm install request

おしまいです。ポイントは npm init --yespackage.json を作成しておく必要があります。この辺は npm の運用ノウハウですね。

Azure Functions の実装

PostBin に POST するコードを実装してみます。

const request = require('request');

module.exports = async function (context, req) {
    const url = `https://postb.in/XQh4ljyY`;
    const payload = {value1: "a", value2: "b", value3: "c"};
    request.post(url, (error, response, body) => {
        context.log(response);
    }).json(payload);
    context.done();
};

あとがき

Azure Functions で Node.js を利用する際、npmパッケージを利用したくなる時があります。Kudu を使ってインストールする方法もあるそうですが、ポータル内で小さい関数を作りたいときは強烈に面倒なので、それを回避してみたという話です。

もう平成もおわりですね。

参考資料

EoT