Azure Functions での HTTP 出力バインド

HTTP 要求の送信者 (HTTP トリガー) に応答するには、HTTP 出力バインディングを使用します。 このバインディングには、HTTP トリガーが必要です。このバインディングを使用すると、トリガーの要求に関連付けられている応答をカスタマイズできます。

HTTP によってトリガーされる関数の既定の戻り値は次のとおりです。

  • Functions 2.x 以降は、本文が空の HTTP 204 No Content
  • Functions 1.x は、本文が空の HTTP 200 OK

Attribute

HttpResponseData を使用する場合、戻り値属性は必要ありません。 ただし、ASP.NET Core 統合およびマルチバインド出力オブジェクトを使用する場合は、[HttpResultAttribute]オブジェクト プロパティに属性を適用する必要があります。 属性はパラメーターを受け取っていません。 詳細については、「使用法」を参照してください。

注釈

Java 関数ランタイム ライブラリで、HttpOutput 注釈を使用して、この関数によって返される既定の変数以外の出力変数を定義します。 この注釈では、次の設定がサポートされます。

重要

この記事では、タブを使用して、Node.js プログラミング モデルの複数のバージョンに対応しています。 v4 モデルは一般提供されており、JavaScript と TypeScript の開発者にとって、より柔軟で直感的なエクスペリエンスが得られるように設計されています。 v4 モデルの動作の詳細については、Azure Functions Node.js 開発者ガイドを参照してください。 v3 と v4 の違いの詳細については、移行ガイドを参照してください。

構成

output.http() メソッドに渡される options オブジェクトは、現在、モデル v4 のどのプロパティもサポートしていません。

構成

次の表は、function.json ファイルで設定したバインド構成のプロパティを説明しています。

プロパティ 説明
type http に設定する必要があります。
direction out に設定する必要があります。
name 応答の関数コードで使用される変数名、または戻り値を使うことを示す $return

使用法

HTTP 応答を送信するには、言語標準の応答パターンを使います。

.NET では、応答の種類は C# モードによって異なります。

HTTP によってトリガーされる関数は、次のいずれかの型のオブジェクトを返します。

  • IActionResult1 (または Task<IActionResult>)
  • HttpResponse1 (または Task<HttpResponse>)
  • HttpResponseData (または Task<HttpResponseData>)
  • 応答の応答本文を表す JSON シリアル化可能な 200 OK 型。

1 この種類は、ASP.NET Core 統合を使用する場合にのみ使用できます。

これらの型のいずれかがマルチバインディング出力オブジェクト一部として使用される場合は、属性を[HttpResult]オブジェクト プロパティに適用する必要があります。 属性はパラメーターを受け取っていません。

Java の場合は、HttpResponseMessage.Builder を使用して、HTTP トリガーへの応答を作成します。 詳細については、「HttpRequestMessage と HttpResponseMessage」を参照してください。

応答の例については、トリガーの例を参照してください。

次のステップ