Azure Functions HTTP output bindings
Use the HTTP output binding to respond to the HTTP request sender (HTTP trigger). This binding requires an HTTP trigger and allows you to customize the response associated with the trigger's request.
The default return value for an HTTP-triggered function is:
HTTP 204 No Content
with an empty body in Functions 2.x and higherHTTP 200 OK
with an empty body in Functions 1.x
Attribute
A return value attribute isn't required when using HttpResponseData. However, when using a ASP.NET Core integration and multi-binding output objects, the [HttpResultAttribute]
attribute should be applied to the object property. The attribute takes no parameters. To learn more, see Usage.
Annotations
In the Java functions runtime library, use the HttpOutput annotation to define an output variable other than the default variable returned by the function. This annotation supports the following settings:
Important
This article uses tabs to support multiple versions of the Node.js programming model. The v4 model is currently in preview and is designed to have a more flexible and intuitive experience for JavaScript and TypeScript developers. Learn more about the differences between v3 and v4 in the upgrade guide.
Configuration
Configuration
The following table explains the binding configuration properties that you set in the function.json file.
Property | Description |
---|---|
type | Must be set to http . |
direction | Must be set to out . |
name | The variable name used in function code for the response, or $return to use the return value. |
Usage
To send an HTTP response, use the language-standard response patterns.
In .NET, the response type depends on the C# mode:
The HTTP triggered function returns an object of one of the following types:
- IActionResult1 (or
Task<IActionResult>
) - HttpResponse1 (or
Task<HttpResponse>
) - HttpResponseData (or
Task<HttpResponseData>
) - JSON serializable types representing the response body for a
200 OK
response.
1 This type is only available when using ASP.NET Core integration.
When one of these types is used as part of multi-binding output objects, the [HttpResult]
attribute should be applied to the object property. The attribute takes no parameters.
For Java, use an HttpResponseMessage.Builder to create a response to the HTTP trigger. To learn more, see HttpRequestMessage and HttpResponseMessage.
For example responses, see the trigger examples.