Azure Serverless Function
Die wichtigen Details zur Azure Function App findet man in der Function App->Platform Features
Unter Functions->Add kann man eine neue Function erstellen
Unter Function App->Configuration findet man die Einstellungen, wie den Connectionstring
Unter Code Deployment->Deployment Center die eigentliche Ausgabe
Neue Function erstellen
Die Functions sind die eigentlichen Elemente einer Function App.
Man erstellt sie unter der Function->Add->New function
Azure Function Templates
Dann werden die templates zum Erstellen von Azure functions angezeigt
Choose a template below or go to the quickstart
In der Regel startet man mit den HTTP trigger
A function that will be run whenever it receives an http request, responding based on data in the body or query string
Bei der Auswahl der http trigger
Muss man den Namen der function eintragen wie HttpTrigger1
Als Authorization Level gilt
Authorization Level =function : API Key muss angegeben werden
Authorization Level =Anonymus: jeder kann zugreifen
Authorization Level =Admin
Run.csx
Die dadurch gebildete run.csx ist die C# Start-datei für die function.
Beim Aufruf wird erst nachgeschaut, ob der function name in der ?Query steht wie ?name=api123 und wenn dieser nicht gefunden wird, wird in den formulardaten des Jason formats nachgeschaut.
Anschliessend gibt die function ein actionresul -response zurück
#r "Newtonsoft.Json"
using System.Net; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Primitives; using Newtonsoft.Json;
public static async Task<IActionResult> Run(HttpRequest req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request.");
string name = req.Query["name"];
string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); dynamic data = JsonConvert.DeserializeObject(requestBody); name = name ?? data?.name;
return name != null ? (ActionResult)new OkObjectResult($"Hello, {name}") : new BadRequestObjectResult("Please pass a name on the query string or in the request body"); }
|