HTTP 要求を使用した Azure 関数の実行

完了

HTTP 要求とは、ほとんどのプラットフォームおよびデバイスで一般的に実行される操作です。 辞書から単語を調べる要求や、地域の天気を取得する要求など、ユーザーは、常に HTTP 要求を送信します。 Azure Functions では、HTTP 要求の受信時にロジックを迅速に作成できます。

このユニットでは、HTTP トリガーを使用して関数を作成して呼び出す方法について説明します。 また、HTTP トリガーで使用できるカスタマイズ オプションの一部についても確認します。

HTTP トリガーとは

HTTP トリガーとは、HTTP 要求を受け取ったときにコードを実行するトリガーです。 HTTP トリガーには、次のような多数の機能やカスタマイズがあります。

  • キーを指定し、承認されたアクセスを提供する。
  • サポートされる HTTP 動詞を制限する。
  • 呼び出し元にデータを返す。
  • クエリ文字列パラメーターまたは要求本文を介して、データを受け取る。
  • 関数 URL を修正するために URL ルート テンプレートをサポートする。

HTTP トリガーを作成するときは、トリガーの名前を指定し、承認レベルを選ぶ必要があります。

HTTP トリガーの承認レベルとは

HTTP トリガーの承認レベルとは、受信 HTTP 要求に承認のための API キーが必要であるかどうかを示すフラグです。

承認レベルは、次のとおり 3 つあります。

  1. 関数
  2. 匿名
  3. [Admin]

関数レベルと管理者レベルは、"キー" ベースです。 HTTP 要求を送信するには、承認のためのキーを指定する必要があります。 キーには、 関数ホストの 2 種類があります。 2 つのキーの違いは、そのスコープです。 関数キーは、関数に固有です。 ホスト キーは、関数アプリ内のすべての関数に適用されます。 承認レベルが Function に設定されている場合は、 関数 または ホスト キーを使用できます。 承認レベルが 管理者に設定されている場合は、 ホスト キーを指定する必要があります。

重要

ホスト キーでは関数アプリへの昇格されたアクセス権が提供されるため、それらを安全に転送して格納する必要があります。

匿名レベルは、承認が必要ないことを意味します。 この演習では、匿名認可レベルを使用します。

HTTP トリガーの作成方法

HTTP トリガーは、タイマー トリガーと同様に Azure portal で作成できます。 Azure 関数内で、定義済みのトリガーの種類の一覧から HTTP トリガー を選択し、実行するロジックを入力し、特定の HTTP 動詞の使用を制限するなどのカスタマイズを行います。

理解しておくことが重要な設定の 1 つは 、要求パラメーター名です。 この設定は、受信 HTTP 要求の情報を含むパラメーター名を表す文字列です。 既定では、パラメーターの名前は req です

HTTP トリガーを起動する方法

HTTP トリガーを起動するには、使用している関数用に URL に HTTP 要求を送信します。 この URL を取得するには、関数のコード ページに移動し、[ 関数 URL の取得 ] リンクを選択します。

アプリの [関数の URL の取得] ボタンが強調表示された [関数アプリ] ウィンドウが表示されている Azure portal のスクリーンショット。

ご利用の関数の URL を取得したら、HTTP 要求を送信できます。 この関数でデータを受信する場合は、クエリ文字列パラメーターを使用するか、要求本文を介してデータを指定できることに注意してください。

HTTP トリガーは、その関数 URL への HTTP 要求を受信したときに実行されます。 HTTP トリガーを使用すると、データを受信し、ロジックを実行し、必要に応じてデータを呼び出し元に戻すことができます。