.NET-Cloud-Funktion erstellen und bereitstellen
Cloud Functions ist eine serverlose Ausführungsumgebung zum Erstellen und Verbinden von Cloud-Diensten. Mit Cloud Functions schreiben Sie einfache Funktionen, die einem einzigen Zweck dienen und an Ereignisse gebunden sind, die von Ihrer Cloudinfrastruktur und Ihren Diensten ausgegeben werden. Die Funktion wird ausgelöst, wenn eine HTTP-Anfrage extern empfangen oder ein beobachtetes Ereignis ausgelöst wird.
Erfahren Sie, wie Sie eine Cloud Functions-Funktion für .NET Core 3.1 mit der Cloud Console erstellen und bereitstellen.
Eine detaillierte Anleitung zu dieser Aufgabe finden Sie direkt in der Cloud Console. Klicken Sie dazu einfach auf Anleitung:
Die folgenden Abschnitte führen Sie durch dieselben Schritte wie das Klicken auf Anleitung.
Wenn diese C#-Funktion durch eine HTTP-Anfrage ausgelöst wird, schreibt sie eine Nachricht:
using Google.Cloud.Functions.Framework; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Logging; using System.IO; using System.Text.Json; using System.Threading.Tasks; namespace SimpleHttpFunction { public class Function : IHttpFunction { private readonly ILogger _logger; public Function(ILogger<Function> logger) => _logger = logger; public async Task HandleAsync(HttpContext context) { HttpRequest request = context.Request; // Check URL parameters for "message" field string message = request.Query["message"]; // If there's a body, parse it as JSON and check for "message" field. using TextReader reader = new StreamReader(request.Body); string text = await reader.ReadToEndAsync(); if (text.Length > 0) { try { JsonElement json = JsonSerializer.Deserialize<JsonElement>(text); if (json.TryGetProperty("message", out JsonElement messageElement) && messageElement.ValueKind == JsonValueKind.String) { message = messageElement.GetString(); } } catch (JsonException parseException) { _logger.LogError(parseException, "Error parsing JSON request"); } } await context.Response.WriteAsync(message ?? "Hello World!"); } } }
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions and Cloud Build APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions and Cloud Build APIs.
Funktion erstellen
Rufen Sie in der Cloud Console die Übersichtsseite von Cloud Functions auf:
Achten Sie darauf, dass das Projekt ausgewählt ist, für das Sie Cloud Functions aktiviert haben.
Klicken Sie auf Funktion erstellen.
Benennen Sie Ihre Funktion.
Wählen Sie im Feld Trigger die Option HTTP aus.
Wählen Sie im Feld Authentifizierung die Option Nicht authentifizierte Aufrufe zulassen aus.
Klicken Sie auf Speichern, um die Änderungen zu speichern, und dann auf Weiter.
Wählen Sie im Feld Quellcode den Inline-Editor aus. In dieser Übung verwenden Sie die im Editor enthaltene Standardfunktion.
Wählen Sie im Drop-down-Menü Laufzeit die .NET Core 3.1-Laufzeit aus.
Funktion implementieren
Klicken Sie unten auf der Seite auf Bereitstellen.
Nachdem Sie auf Bereitstellen geklickt haben, werden Sie von der Cloud Console auf die Übersichtsseite von Cloud Functions weitergeleitet.
Während die Funktion implementiert wird, ist daneben ein kleines Wartesymbol zu sehen. Nach der Bereitstellung wird ein grünes Häkchen angezeigt.
Funktion testen
Rufen Sie das Menü für Ihre Funktion auf und klicken Sie auf Funktion testen.
Klicken Sie auf der Testseite auf Funktion testen.
Der Bildschirm Ausgabe zeigt den Text
"Hello World!"
an.Ändern Sie nun die Nachricht. Geben Sie im Feld Auslösendes Ereignis den Text
{"message":"Hello, YOUR_NAME!"}
ein. Ersetzen Sie dabeiYOUR_NAME
durch einen Namen und klicken Sie auf Funktion testen.Angenommen, Sie haben den Namen "Rowan" eingegeben. Im Feld Ausgabe wird dann die Nachricht
Hello, Rowan!
angezeigt.Im Feld Logs wird ein erfolgreicher Test mit dem Statuscode 200 angezeigt.
Logs ansehen
Im Logverlauf können Sie Ihre Aktionen sehen:
- Rufen Sie auf der Übersichtsseite von Cloud Functions das Menü für die Funktion auf und klicken Sie auf Logs ansehen.
Der Logverlauf wird angezeigt.