Microsoft.Solutions.ArmApiControl UI-element
De ArmApiControl
resultaten worden opgehaald van een Azure Resource Manager API-bewerking met BEHULP van GET of POST. U kunt de resultaten gebruiken om dynamische inhoud in andere besturingselementen te vullen.
Ui-voorbeeld
Er is geen gebruikersinterface voor ArmApiControl
.
Schema
In het volgende voorbeeld ziet u het schema van het besturingselement.
{
"name": "testApi",
"type": "Microsoft.Solutions.ArmApiControl",
"request": {
"method": "{HTTP-method}",
"path": "{path-for-the-URL}",
"body": {
"key1": "value1",
"key2": "value2"
}
}
}
Voorbeelduitvoer
De uitvoer van het besturingselement wordt niet weergegeven voor de gebruiker. In plaats daarvan worden de resultaten van de bewerking gebruikt in andere besturingselementen.
Opmerkingen
De
request.method
eigenschap geeft de HTTP-methode op. Alleen GET of POST zijn toegestaan.De
request.path
eigenschap geeft een URL op die een relatief pad naar een Azure Resource Manager-eindpunt moet zijn. Het kan een statisch pad zijn of dynamisch worden samengesteld door uitvoerwaarden van de andere besturingselementen te verwijzen.Een Azure Resource Manager-aanroep bijvoorbeeld bij de
Microsoft.Network/expressRouteCircuits
resourceprovider."path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}?api-version=2022-01-01"
De
request.body
eigenschap is optioneel. Gebruik deze om een JSON-hoofdtekst op te geven die met de aanvraag wordt verzonden. De hoofdtekst kan statische inhoud zijn of dynamisch worden samengesteld door te verwijzen naar uitvoerwaarden van andere besturingselementen.
Opmerking
In het volgende voorbeeld gebruikt het providersApi
element de ArmApiControl
API en roept het een API aan om een matrix met providerobjecten op te halen.
De providersDropDown
eigenschap van allowedValues
het element is geconfigureerd om de matrix te gebruiken en de providernamen op te halen. De providernamen worden weergegeven in de vervolgkeuzelijst.
De output
eigenschap providerName
toont de providernaam die is geselecteerd in de vervolgkeuzelijst. De uitvoer kan worden gebruikt om de waarde door te geven aan een parameter in een Azure Resource Manager-sjabloon.
{
"$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')]"
}
}
}
Zie het voorbeeld van Microsoft.Common.TextBox met één regel voor een voorbeeld van de ArmApiControl
eigenschap die gebruikmaakt request.body
van de eigenschap. In dit voorbeeld wordt de beschikbaarheid van een opslagaccountnaam gecontroleerd en wordt een bericht geretourneerd als de naam niet beschikbaar is.
Volgende stappen
- Zie voor een inleiding tot het maken van UI-definities CreateUiDefinition.json voor het maken van een door Azure beheerde toepassing.
- Zie CreateUiDefinition-elementen voor een beschrijving van algemene eigenschappen in UI-elementen.
- Zie CreateUiDefinition-functies voor meer informatie over functies zoals
map
,basics
enparse
.