Benutzeroberflächenelement „Microsoft.Solutions.ArmApiControl“
ArmApiControl
ruft Ergebnisse eines Azure Resource Manager-API-Vorgangs mithilfe von GET oder POST ab. Mit den Ergebnissen können Sie dynamische Inhalte in anderen Steuerelementen auffüllen.
Benutzeroberflächenbeispiel
Es gibt keine Benutzeroberfläche für ArmApiControl
.
Schema
Das folgende Beispiel zeigt das Schema des Steuerelements.
{
"name": "testApi",
"type": "Microsoft.Solutions.ArmApiControl",
"request": {
"method": "{HTTP-method}",
"path": "{path-for-the-URL}",
"body": {
"key1": "value1",
"key2": "value2"
}
}
}
Beispielausgabe
Die Ausgabe des Steuerelements wird dem Benutzer nicht angezeigt. Stattdessen werden die Ergebnisse des Vorgangs in anderen Steuerelementen verwendet.
Bemerkungen
Die
request.method
-Eigenschaft gibt die HTTP-Methode an. Nur GET oder POST sind zulässig.Durch die Eigenschaft
request.path
wird eine URL angegeben, bei der es sich um einen relativen Pfad zu einem Azure Resource Manager-Endpunkt handeln muss. Dies kann ein statischer Pfad sein, oder er kann dynamisch erstellt werden, indem auf Ausgabewerte der anderen Steuerelemente verwiesen wird.Beispielsweise ein Azure Resource Manager-Aufruf an den
Microsoft.Network/expressRouteCircuits
-Ressourcenanbieter."path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}?api-version=2022-01-01"
Die
request.body
-Eigenschaft ist optional. Verwenden Sie ihn, um einen JSON-Text anzugeben, der mit der Anforderung gesendet wird. Der Text kann statischer Inhalt sein, oder er kann dynamisch erstellt werden, indem auf Ausgabewerte anderer Steuerelemente verwiesen wird.
Beispiel
Im folgenden Beispiel verwendet das providersApi
-Element ArmApiControl
und ruft eine API auf, um ein Array von Anbieterobjekten zu erhalten.
Die allowedValues
-Eigenschaft des providersDropDown
-Elements ist für die Verwendung des Arrays und zum Abrufen der Anbieternamen konfiguriert. Die Anbieternamen werden in der Dropdownliste angezeigt.
Die output
-Eigenschaft providerName
zeigt den Anbieternamen an, der aus der Dropdownliste ausgewählt wurde. Die Ausgabe kann verwendet werden, um den Wert an einen Parameter in einer Azure Resource Manager-Vorlage zu übergeben.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "providersApi",
"type": "Microsoft.Solutions.ArmApiControl",
"request": {
"method": "GET",
"path": "[concat(subscription().id, '/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2022-01-01')]"
}
},
{
"name": "providerDropDown",
"type": "Microsoft.Common.DropDown",
"label": "Provider",
"toolTip": "The provider that offers the express route connection.",
"constraints": {
"allowedValues": "[map(basics('providersApi').value, (item) => parse(concat('{\"label\":\"', item.name, '\",\"value\":\"', item.name, '\"}')))]",
"required": true
},
"visible": true
}
],
"steps": [],
"outputs": {
"providerName": "[basics('providerDropDown')]"
}
}
}
Ein Beispiel für das ArmApiControl
, das die request.body
-Eigenschaft verwendet, finden Sie in dem einzeiligen Beispiel Microsoft.Common.TextBox. Mit diesem Beispiel wird die Verfügbarkeit eines Speicherkontonamens überprüft und eine Meldung zurückgegeben, wenn der Name nicht verfügbar ist.
Nächste Schritte
- Eine Einführung in das Erstellen von Benutzeroberflächendefinitionen finden Sie unter Die Datei „CreateUiDefinition.json“ für die Benutzeroberfläche zum Erstellen verwalteter Azure-Anwendungen.
- Eine Beschreibung der allgemeinen Eigenschaften in Benutzeroberflächenelementen finden Sie unter CreateUiDefinition-Elemente.
- Weitere Informationen zu Funktionen wie
map
,basics
undparse
finden Sie unter CreateUiDefinition-Funktionen.