Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel gebruikt u lokale opdrachtregelprogramma's om een functie te maken die reageert op HTTP-aanvragen. Nadat u uw code lokaal hebt gecontroleerd, implementeert u deze in een serverloos Flex Consumption-hostingabonnement in Azure Functions.
Het voltooien van deze snelle start brengt kosten met zich mee van een paar dollarcent of minder, die in rekening worden gebracht op uw Azure-account.
Zorg ervoor dat u bovenaan het artikel de gewenste ontwikkeltaal selecteert.
Prerequisites
- Een Azure-account met een actief abonnement. Gratis een account maken
-
Java 17 Developer Kit
- Als u een andere ondersteunde versie van Java gebruikt, moet u het pom.xml-bestand van het project bijwerken.
- De
JAVA_HOMEomgevingsvariabele moet worden ingesteld op de installatielocatie van de juiste versie van de Java Development Kit (JDK).
- Apache Maven 3.8.x
De
jqopdrachtregel JSON-processor, die wordt gebruikt om JSON-uitvoer te parseren, is ook beschikbaar in Azure Cloud Shell.
Azure Functions Core Tools installeren
De aanbevolen manier om Core Tools te installeren, is afhankelijk van het besturingssysteem van uw lokale ontwikkelcomputer.
In de volgende stappen wordt een Windows Installer (MSI) gebruikt om Core Tools v4.x te installeren. Voor meer informatie over andere installatieprogramma's op basis van pakketten, zie de Core Tools Readme.
Download en voer het Core Tools-installatieprogramma uit op basis van uw versie van Windows:
- v4.x - Windows 64-bits (aanbevolen. Visual Studio Code-foutopsporing vereist 64-bits.)
- v4.x - Windows 32-bits
Als u eerder Windows Installer (MSI) hebt gebruikt om Core Tools in Windows te installeren, moet u de oude versie verwijderen uit Programma's toevoegen voordat u de nieuwste versie installeert.
Een virtuele omgeving maken en activeren
Voer de volgende opdrachten uit in een geschikte map om een virtuele omgeving met de naam .venv te maken en te activeren. Zorg ervoor dat u een van de Python-versies gebruikt die worden ondersteund door Azure Functions.
python -m venv .venv
source .venv/bin/activate
Als Python het venv-pakket niet heeft geïnstalleerd in uw Linux-distributie, voert u de volgende opdracht uit:
sudo apt-get install python3-venv
U voert alle volgende opdrachten uit in deze geactiveerde virtuele omgeving.
Een lokaal codeproject en een functie maken
In Azure Functions is uw codeproject een app die een of meer afzonderlijke functies bevat die elk reageren op een specifieke trigger. Alle functies in een project delen dezelfde configuraties en worden geïmplementeerd als een eenheid in Azure. In deze sectie maakt u een codeproject dat één functie bevat.
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime dotnet-isolated
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime node --language javascript
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime powershell
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime python
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime node --language typescript
Voer in een terminal of opdrachtprompt deze
func initopdracht uit om een functie-app-project te maken in de huidige map:func init --worker-runtime custom
Voer in een lege map deze
mvnopdracht uit om het codeproject te genereren op basis van een Maven-archetype van Azure Functions:mvn archetype:generate -DarchetypeGroupId=com.microsoft.azure -DarchetypeArtifactId=azure-functions-archetype -DjavaVersion=17Important
- Gebruik
-DjavaVersion=11als u uw functies wilt uitvoeren in Java 11. Zie Java-versies voor meer informatie. - Stel de
JAVA_HOMEomgevingsvariabele in op de installatielocatie van de juiste versie van de JDK om dit artikel te voltooien.
- Gebruik
Maven vraagt u om de waarden die nodig zijn om het project tijdens de implementatie te voltooien.
Geef de volgende waarden op als daarom wordt gevraagd:Prompt Value Description groupId com.fabrikamEen waarde die uw project uniek identificeert binnen alle projecten, overeenkomstig de regels voor de naamgeving van pakketten voor Java. artifactId fabrikam-functionsEen waarde die bestaat uit de naam van het JAR-bestand, zonder een versienummer. version 1.0-SNAPSHOTKies de standaardwaarde. package com.fabrikamEen waarde die het Java-pakket aangeeft voor de gegenereerde functiecode. Gebruik de standaard. Typ
Yof druk op Enter om te bevestigen.Maven maakt de projectbestanden in een nieuwe map met de naam van artifactId; in dit voorbeeld is dat
fabrikam-functions.Navigeer naar de projectmap:
cd fabrikam-functionsU kunt de door de sjabloon gegenereerde code voor uw nieuwe HTTP-triggerfunctie bekijken in Function.java in de projectdirectory \src\main\java\com\fabrikam .
Gebruik deze
func newopdracht om een functie toe te voegen aan uw project:func new --name HttpExample --template "HTTP trigger" --authlevel "function"Er wordt een nieuw codebestand toegevoegd aan uw project. In dit geval is het
--nameargument de unieke naam van uw functie (HttpExample) en het--templateargument geeft een HTTP-trigger op.
De hoofdmap van het project bevat verschillende bestanden voor het project, waaronder configuratiebestanden met de naamlocal.settings.json en host.json. Omdat local.settings.json geheimen kan bevatten die zijn gedownload vanuit Azure, wordt het bestand standaard uitgesloten van broncodebeheer in het bestand .gitignore.
Uw functie maken en compileren
Het bestand function.json in de map HttpExample declareert een HTTP-triggerfunctie. U voltooit de functie door een handler toe te voegen en deze te compileren in een uitvoerbaar bestand.
Druk op Ctrl+N (Cmd+N in macOS) om een nieuw bestand te maken. Sla het bestand op als handler.go in de hoofdmap van de functie-app (in dezelfde map als host.json).
Voeg de volgende code toe aan handler.go en sla het bestand op. Dit is uw aangepaste handler in Go.
package main import ( "fmt" "log" "net/http" "os" ) func helloHandler(w http.ResponseWriter, r *http.Request) { message := "This HTTP triggered function executed successfully. Pass a name in the query string for a personalized response.\n" name := r.URL.Query().Get("name") if name != "" { message = fmt.Sprintf("Hello, %s. This HTTP triggered function executed successfully.\n", name) } fmt.Fprint(w, message) } func main() { listenAddr := ":8080" if val, ok := os.LookupEnv("FUNCTIONS_CUSTOMHANDLER_PORT"); ok { listenAddr = ":" + val } http.HandleFunc("/api/HttpExample", helloHandler) log.Printf("About to listen on %s. Go to https://127.0.0.1%s/", listenAddr, listenAddr) log.Fatal(http.ListenAndServe(listenAddr, nil)) }Druk op Ctrl+Shift+` of selecteer Nieuwe terminal in het menu Terminal om een nieuwe geïntegreerde terminal te openen in Visual Studio Code.
Compileer uw aangepaste handler met de volgende opdracht. Een uitvoerbaar bestand met de naam
handler(handler.exein Windows) wordt uitgevoerd in de hoofdmap van de functie-app.go build handler.go
Uw functie-app configureren
De functiehost moet worden geconfigureerd om het binaire bestand van uw aangepaste handler uit te voeren wanneer deze wordt gestart.
Open host.json.
Stel in de sectie
customHandler.descriptionde waarde vandefaultExecutablePathin ophandler(in Windows moet u deze waarde instellen ophandler.exe).Voeg in de sectie
customHandlereen eigenschap toe met de naamenableForwardingHttpRequesten stel de waarde ervan in optrue. Deze maakt het programmeren voor functies die uitsluitend bestaan uit een HTTP-trigger eenvoudiger, omdat u een typische HTTP-aanvraag kunt gebruiken in plaats van de aangepaste handler request payload.Controleer of de sectie
customHandlereruitziet als in dit voorbeeld. Sla het bestand op."customHandler": { "description": { "defaultExecutablePath": "handler", "workingDirectory": "", "arguments": [] }, "enableForwardingHttpRequest": true }
De functie-app is geconfigureerd om het uitvoerbare bestand van de aangepaste handler te starten.
De functie lokaal uitvoeren
Controleer de nieuwe functie door het project lokaal uit te voeren en het functie-eindpunt aan te roepen.
Gebruik deze opdracht om de lokale Azure Functions Runtime-host te starten in de hoofdmap van de projectmap:
func startnpm install npm startmvn clean package mvn azure-functions:runAan het einde van de uitvoer worden de volgende regels weergegeven:
... Now listening on: http://0.0.0.0:7071 Application started. Press Ctrl+C to shut down. Http Functions: HttpExample: [GET,POST] http://localhost:7071/api/HttpExample ...Kopieer de URL van uw
HttpExamplefunctie uit deze uitvoer naar een browser en blader naar de functie-URL. Je zou een succesreactie moeten ontvangen met een bericht: 'hallo wereld'.Note
Omdat autorisatie van toegangssleutels niet wordt afgedwongen wanneer deze lokaal wordt uitgevoerd, bevat de geretourneerde functie-URL niet de waarde van de toegangssleutel en hoeft u de functie niet aan te roepen.
Wanneer u klaar bent, gebruikt u Ctrl+C en kiest u
yom de functiehost te stoppen.
Ondersteunende Azure-resources maken voor uw functie
Voordat u uw functiecode in Azure kunt implementeren, moet u deze resources maken:
- Een resourcegroep, een logische container voor gerelateerde resources.
- Een standaardopslagaccount dat wordt gebruikt door de Functions-host voor het onderhouden van status en andere informatie over uw functies.
- Een door de gebruiker toegewezen beheerde identiteit, die de Functions-host gebruikt om verbinding te maken met het standaardopslagaccount.
- Een functie-app, die de omgeving biedt voor het uitvoeren van uw functiecode. Een functie-app wordt gekoppeld aan uw lokale functieproject en maakt het mogelijk om functies te groeperen als een logische eenheid, zodat u resources eenvoudiger kunt beheren, implementeren en delen.
Gebruik de Azure CLI-opdrachten in deze stappen om de vereiste resources te maken.
Als u dit nog niet hebt gedaan, meldt u zich aan bij Azure:
az loginMet de
az loginopdracht meldt u zich aan bij uw Azure-account. Sla deze stap over wanneer u deze stap uitvoert in Azure Cloud Shell.Als u dit nog niet hebt gedaan, gebruikt u deze
az extension addopdracht om de Application Insights-extensie te installeren:az extension add --name application-insightsGebruik deze opdracht az group create om een resourcegroep te maken met de naam
AzureFunctionsQuickstart-rgin uw gekozen regio:az group create --name "AzureFunctionsQuickstart-rg" --location "<REGION>"Vervang in dit voorbeeld door
<REGION>een regio bij u in de buurt die ondersteuning biedt voor het Flex Consumption-abonnement. Gebruik de opdracht az functionapp list-flexconsumption-locations om de lijst met momenteel ondersteunde regio's weer te geven.Gebruik deze opdracht az storage account create om een algemeen opslagaccount in uw resourcegroep en regio te maken:
az storage account create --name <STORAGE_NAME> --location "<REGION>" --resource-group "AzureFunctionsQuickstart-rg" \ --sku "Standard_LRS" --allow-blob-public-access false --allow-shared-key-access falseVervang in dit voorbeeld door
<STORAGE_NAME>een naam die geschikt is voor u en uniek in Azure Storage. Namen mogen drie tot 24 tekens bevatten en u mag alleen kleine letters gebruiken. MetStandard_LRSgeeft u een account voor algemeen gebruik op dat wordt ondersteund door Functions. Dit nieuwe account kan alleen worden geopend met behulp van door Microsoft Entra geverifieerde identiteiten waaraan machtigingen zijn verleend voor specifieke resources.Gebruik dit script om een door de gebruiker toegewezen beheerde identiteit te maken, de geretourneerde JSON-eigenschappen van het object te parseren met behulp
jqvan en machtigingen te verlenenStorage Blob Data Ownerin het standaardopslagaccount:output=$(az identity create --name "func-host-storage-user" --resource-group "AzureFunctionsQuickstart-rg" --location <REGION> \ --query "{userId:id, principalId: principalId, clientId: clientId}" -o json) userId=$(echo $output | jq -r '.userId') principalId=$(echo $output | jq -r '.principalId') clientId=$(echo $output | jq -r '.clientId') storageId=$(az storage account show --resource-group "AzureFunctionsQuickstart-rg" --name <STORAGE_NAME> --query 'id' -o tsv) az role assignment create --assignee-object-id $principalId --assignee-principal-type ServicePrincipal \ --role "Storage Blob Data Owner" --scope $storageIdAls u het
jqhulpprogramma niet in uw lokale Bash-shell hebt, is deze beschikbaar in Azure Cloud Shell. Vervang in dit voorbeeld<STORAGE_NAME>respectievelijk de<REGION>naam en regio van uw standaardopslagaccount.Met de opdracht az identity create maakt u een identiteit met de naam
func-host-storage-user. Het geretourneerdeprincipalIdbestand wordt gebruikt om machtigingen toe te wijzen aan deze nieuwe identiteit in het standaardopslagaccount met behulp van deaz role assignment createopdracht. Deaz storage account showopdracht wordt gebruikt om de id van het opslagaccount op te halen.Gebruik deze opdracht az functionapp create om de functie-app te maken in Azure:
az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime dotnet-isolated --runtime-version <LANGUAGE_VERSION> --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime java --runtime-version <LANGUAGE_VERSION> --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime node --runtime-version <LANGUAGE_VERSION> --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime python --runtime-version <LANGUAGE_VERSION> --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime python --runtime-version <LANGUAGE_VERSION> --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"az functionapp create --resource-group "AzureFunctionsQuickstart-rg" --name <APP_NAME> --flexconsumption-location <REGION> \ --runtime other --storage-account <STORAGE_NAME> \ --deployment-storage-auth-type UserAssignedIdentity --deployment-storage-auth-value "func-host-storage-user"Vervang in dit voorbeeld deze tijdelijke aanduidingen door de juiste waarden:
-
<APP_NAME>: een wereldwijd unieke naam die geschikt is voor u. De<APP_NAME>is ook het standaard DNS-domein voor de functie-app. -
<STORAGE_NAME>: de naam van het account dat u in de vorige stap hebt gebruikt. -
<REGION>: uw huidige regio. -
<LANGUAGE_VERSION>: gebruik dezelfde ondersteunde taalstackversie die u lokaal hebt geverifieerd, indien van toepassing.
Met deze opdracht maakt u een functie-app die wordt uitgevoerd in uw opgegeven taalruntime op Linux in het Flex Consumption-abonnement. Dit is gratis voor de hoeveelheid gebruik die u hier maakt. Met de opdracht maakt u ook een gekoppeld Azure Application Insights-exemplaar in dezelfde resourcegroep, waarmee u de uitvoeringen van uw functie-app kunt bewaken en logboeken kunt bekijken. Zie Monitor Azure Functions voor meer informatie. Er worden geen kosten gerekend voor de instantie tot u deze activeert.
-
Gebruik dit script om uw door de gebruiker toegewezen beheerde identiteit toe te voegen aan de rol Monitoring Metrics Publisher in uw Application Insights-exemplaar:
appInsights=$(az monitor app-insights component show --resource-group "AzureFunctionsQuickstart-rg" \ --app <APP_NAME> --query "id" --output tsv) principalId=$(az identity show --name "func-host-storage-user" --resource-group "AzureFunctionsQuickstart-rg" \ --query principalId -o tsv) az role assignment create --role "Monitoring Metrics Publisher" --assignee $principalId --scope $appInsightsVervang in dit voorbeeld
<APP_NAME>door de naam van de functie-app. Met de opdracht az role assignment create voegt u uw gebruiker toe aan de rol. De resource-id van uw Application Insights-exemplaar en de principal-id van uw gebruiker worden verkregen met behulp van respectievelijk de az monitor app-insights-component show enaz identity showopdrachten.
Toepassingsinstellingen bijwerken
Als u wilt dat de Functions-host verbinding maakt met het standaardopslagaccount met behulp van gedeelde geheimen, vervangt u de instelling van de AzureWebJobsStorage verbindingsreeks door verschillende instellingen die voorafgegaan worden door AzureWebJobsStorage__. Deze instellingen definiëren een complexe instelling die uw app gebruikt om verbinding te maken met opslag en Application Insights met een door de gebruiker toegewezen beheerde identiteit.
Gebruik dit script om de client-id op te halen van de door de gebruiker toegewezen beheerde identiteit en gebruikt dit om beheerde identiteitverbindingen met zowel opslag als Application Insights te definiëren:
clientId=$(az identity show --name func-host-storage-user \ --resource-group AzureFunctionsQuickstart-rg --query 'clientId' -o tsv) az functionapp config appsettings set --name <APP_NAME> --resource-group "AzureFunctionsQuickstart-rg" \ --settings AzureWebJobsStorage__accountName=<STORAGE_NAME> \ AzureWebJobsStorage__credential=managedidentity AzureWebJobsStorage__clientId=$clientId \ APPLICATIONINSIGHTS_AUTHENTICATION_STRING="ClientId=$clientId;Authorization=AAD"Vervang in dit script
<APP_NAME>respectievelijk<STORAGE_NAME>de namen van uw functie-app en opslagaccount.Voer de opdracht az functionapp config appsettings delete uit om de bestaande
AzureWebJobsStorageinstelling voor de verbindingsreeks te verwijderen, die een gedeelde geheime sleutel bevat:az functionapp config appsettings delete --name <APP_NAME> --resource-group "AzureFunctionsQuickstart-rg" --setting-names AzureWebJobsStorageVervang in dit voorbeeld
<APP_NAME>door de namen van uw functie-app.
Op dit moment kan de Functions-host veilig verbinding maken met het opslagaccount met behulp van beheerde identiteiten in plaats van gedeelde geheimen. U kunt nu uw projectcode implementeren in de Azure-resources.
Het functieproject implementeren in Azure
Nadat u uw functie-app in Azure hebt gemaakt, bent u nu klaar om uw lokale functions-project te implementeren met behulp van de func azure functionapp publish opdracht.
Voer deze
func azure functionapp publishopdracht uit in de hoofdprojectmap:func azure functionapp publish <APP_NAME>Vervang in dit voorbeeld door
<APP_NAME>de naam van uw app. Een geslaagde implementatie toont resultaten die vergelijkbaar zijn met de volgende uitvoer (afgekapt voor eenvoud):... Getting site publishing info... Creating archive for current directory... Performing remote build for functions project. ... Deployment successful. Remote build succeeded! Syncing triggers... Functions in msdocs-azurefunctions-qs: HttpExample - [httpTrigger] Invoke url: https://msdocs-azurefunctions-qs.azurewebsites.net/api/httpexampleVoer in uw lokale terminal of opdrachtprompt deze opdracht uit om de URL-eindpuntwaarde op te halen, inclusief de toegangssleutel:
func azure functionapp list-functions <APP_NAME> --show-keysVervang in dit voorbeeld opnieuw door
<APP_NAME>de naam van uw app.Kopieer de geretourneerde eindpunt-URL en -sleutel die u gebruikt om het functie-eindpunt aan te roepen.
Het pom.xml-bestand bijwerken
Nadat u uw functie-app in Azure hebt gemaakt, werkt u het pom.xml-bestand bij zodat Maven kan implementeren in uw nieuwe app. Anders maakt Maven een nieuwe set Azure-resources tijdens de implementatie.
Gebruik deze
az functionapp showopdracht in Azure Cloud Shell om de URL en id van de implementatiecontainer op te halen van de nieuwe door de gebruiker toegewezen beheerde identiteit:az functionapp show --name <APP_NAME> --resource-group AzureFunctionsQuickstart-rg \ --query "{userAssignedIdentityResourceId: properties.functionAppConfig.deployment.storage.authentication.userAssignedIdentityResourceId, \ containerUrl: properties.functionAppConfig.deployment.storage.value}"Vervang in dit voorbeeld
<APP_NAME>door de namen van uw functie-app.Open in de hoofdmap van het project het bestand pom.xml in een teksteditor, zoek het
propertieselement en werk deze specifieke eigenschapswaarden bij:Naam van de eigenschap Value java.versionGebruik dezelfde ondersteunde taalstackversie die u lokaal hebt geverifieerd, zoals 17.azure.functions.maven.plugin.version1.37.1azure.functions.java.library.version3.1.0functionAppNameDe naam van uw functie-app in Azure. Zoek de
configurationsectie van deazure-functions-maven-pluginen vervang deze door dit XML-fragment:<configuration> <appName>${functionAppName}</appName> <resourceGroup>AzureFunctionsQuickstart-rg</resourceGroup> <pricingTier>Flex Consumption</pricingTier> <region>....</region> <runtime> <os>linux</os> <javaVersion>${java.version}</javaVersion> </runtime> <deploymentStorageAccount>...</deploymentStorageAccount> <deploymentStorageResourceGroup>AzureFunctionsQuickstart-rg</deploymentStorageResourceGroup> <deploymentStorageContainer>...</deploymentStorageContainer> <storageAuthenticationMethod>UserAssignedIdentity</storageAuthenticationMethod> <userAssignedIdentityResourceId>...</userAssignedIdentityResourceId> <appSettings> <property> <name>FUNCTIONS_EXTENSION_VERSION</name> <value>~4</value> </property> </appSettings> </configuration>Breng in het nieuwe
configuration-element deze specifieke vervangingen van de beletseltekens (...) waarden aan:Configuration Value regionDe regiocode van uw bestaande functie-app, zoals eastus.deploymentStorageAccountDe naam van uw opslagaccount. deploymentStorageContainerDe naam van de implementatieshare, die volgt op de \containerUrlwaarde die u hebt verkregen.userAssignedIdentityResourceIdDe volledig gekwalificeerde resource-ID van uw beheerde identiteit die u hebt verkregen. Sla de wijzigingen op in het pom.xml-bestand .
U kunt nu Maven gebruiken om uw codeproject te implementeren in uw bestaande app.
Het functieproject implementeren in Azure
Voer deze opdracht uit vanaf de opdrachtprompt:
mvn clean package azure-functions:deployNadat de implementatie is voltooid, voert u deze Core Tools-opdracht uit om de URL-eindpuntwaarde op te halen, inclusief de toegangssleutel:
func azure functionapp list-functions <APP_NAME> --show-keysVervang in dit voorbeeld opnieuw door
<APP_NAME>de naam van uw app.Kopieer de geretourneerde eindpunt-URL en -sleutel die u gebruikt om het functie-eindpunt aan te roepen.
De functie aanroepen in Azure
Omdat uw functie gebruikmaakt van een HTTP-trigger en GET-aanvragen ondersteunt, roept u deze aan door een HTTP-aanvraag naar de URL te verzenden met behulp van de toegangssleutel op functieniveau. Het is het eenvoudigst om een GET-aanvraag uit te voeren in een browser.
Plak de URL en de toegangssleutel die u hebt gekopieerd in een adresbalk van de browser.
De eindpunt-URL moet er ongeveer als volgt uitzien:
https://contoso-app.azurewebsites.net/api/httpexample?code=aabbccdd...
In dit geval moet u ook een toegangssleutel opgeven in de querytekenreeks bij het indienen van een GET-aanvraag naar de eindpunt-URL. Het gebruik van een toegangssleutel wordt aanbevolen om de toegang van willekeurige clients te beperken. Wanneer u een POST-aanvraag maakt met behulp van een HTTP-client, moet u in plaats daarvan de toegangssleutel in de x-functions-key header opgeven.
Wanneer u naar deze URL navigeert, moet de browser vergelijkbare uitvoer weergeven als toen u de functie lokaal uitvoerde.
De hulpbronnen opschonen
Als u naar de volgende stap gaat en een uitvoerbinding voor een Azure Storage-wachtrij toevoegt, laat dan al uw resources op hun plaats staan, aangezien u verder zult bouwen op wat u al gedaan heeft.
Gebruik anders de volgende opdracht om de resourcegroep en alle bijbehorende resources te verwijderen om te voorkomen dat er verdere kosten in rekening worden gebracht.
az group delete --name AzureFunctionsQuickstart-rg