HTTP-Ausgabebindungen in Azure Functions

HTTP-ausgelöste Funktionen verwenden HTTP-Ausgabe, um auf den HTTP-Anfragesender zu reagieren. In den meisten Sprachen wird diese Ausgabe als HTTP-Ausgabebindung dargestellt. In Go werden HTTP-Antworten direkt http.ResponseWriter an deinen HTTP-Trigger-Handler weitergegeben, anstatt mit einer separaten Output-Binding-Konfiguration.

Der Standardrückgabewert für eine HTTP-ausgelöste Funktion ist:

  • HTTP 204 No Content bei leerem Hauptteil in Functions 2.x und höher
  • HTTP 200 OK bei leerem Hauptteil in Functions 1.x

Attribut

Ein Rückgabewertattribut ist bei Verwendung von HttpResponseData nicht erforderlich. Wenn Sie jedoch eine ASP.NET Core-Integrations - und Multibindungsausgabeobjekte verwenden, sollte das [HttpResultAttribute] Attribut auf die Objekteigenschaft angewendet werden. Das Attribut akzeptiert keine Parameter. Weitere Informationen finden Sie unter Syntax.

Anmerkungen

Verwenden Sie in der Laufzeitbibliothek für Java-Funktionen die HttpOutput-Anmerkung, um eine andere Ausgabevariable als die von der Funktion zurückgegebene Standardvariable zu definieren. Diese Anmerkung unterstützt die folgenden Einstellungen:

Wichtig

In diesem Artikel werden Registerkarten verwendet, um mehrere Versionen des Node.js-Programmiermodells zu unterstützen. Das v4-Modell ist allgemein verfügbar und bietet JavaScript- und TypeScript-Entwicklern eine flexiblere und intuitivere Erfahrung. Weitere Informationen zur Funktionsweise des v4-Modells finden Sie im Azure Functions Node.js-Entwicklerhandbuch. Weitere Informationen zu den Unterschieden zwischen v3 und v4 finden Sie im Migrationshandbuch.

Konfiguration

Das an die options-Methode übergebene output.http()-Objekt unterstützt derzeit keine Eigenschaften für das Modell v4.

Konfiguration

Die folgende Tabelle gibt Aufschluss über die Bindungskonfigurationseigenschaften, die Sie in der Datei function.json festlegen.

Eigenschaft Beschreibung des Dataflows
type Muss auf http festgelegt sein.
direction Muss auf out festgelegt sein.
name Der Variablenname, der im Funktionscode für die Antwort verwendet wird, oder $return für die Verwendung des Rückgabewerts.

In Go wird die HTTP-Ausgabe über den Standard http.ResponseWriter verarbeitet, der an Ihren HTTP-Trigger-Handler weitergegeben wird. Du schreibst deine Antwort direkt mit dem Autor. Es ist keine separate Ausgangsbindungskonfiguration erforderlich.

func hello(w http.ResponseWriter, r *http.Request) {
    w.Header().Set("Content-Type", "application/json")
    w.WriteHeader(http.StatusOK)
    fmt.Fprintf(w, `{"message": "Hello from Go!"}`)
}

Verwendung

Verwenden Sie zum Senden einer HTTP-Antwort die Antwortmuster des Sprachstandards.

In .NET hängt der Antworttyp vom C#-Modus ab:

Die ausgelöste HTTP-Funktion gibt ein Objekt eines der folgenden Typen zurück:

  • IActionResult1 (oder Task<IActionResult>)
  • HttpResponse1 (oder Task<HttpResponse>)
  • HttpResponseData (oder Task<HttpResponseData>)
  • JSON serialisierbare Typen, die den Antworttext für eine 200 OK Antwort darstellen.

1 Dieser Typ ist nur verfügbar, wenn ASP.NET Core-Integration verwendet wird.

Wenn eines dieser Typen als Teil von Multibindungsausgabeobjekten verwendet wird, sollte das [HttpResult] Attribut auf die Objekteigenschaft angewendet werden. Das Attribut akzeptiert keine Parameter.

Verwenden Sie für Java httpResponseMessage.Builder, um eine Antwort auf den HTTP-Trigger zu erstellen. Weitere Informationen finden Sie unter HttpRequestMessage und HttpResponseMessage.

Beispielantworten finden Sie in den Triggerbeispielen.

Nächste Schritte