Microsoft.Solutions.ArmApiControl, element interfejsu użytkownika
Pobiera ArmApiControl
wyniki z operacji interfejsu API usługi Azure Resource Manager przy użyciu metody GET lub POST. Możesz użyć wyników, aby wypełnić zawartość dynamiczną w innych kontrolkach.
Przykład interfejsu użytkownika
Nie ma interfejsu użytkownika dla elementu ArmApiControl
.
Schemat
W poniższym przykładzie przedstawiono schemat kontrolki.
{
"name": "testApi",
"type": "Microsoft.Solutions.ArmApiControl",
"request": {
"method": "{HTTP-method}",
"path": "{path-for-the-URL}",
"body": {
"key1": "value1",
"key2": "value2"
}
}
}
Przykładowe dane wyjściowe
Dane wyjściowe kontrolki nie są wyświetlane użytkownikowi. Zamiast tego wyniki operacji są używane w innych kontrolkach.
Uwagi
Właściwość
request.method
określa metodę HTTP. Dozwolone są tylko polecenia GET lub POST.Właściwość
request.path
określa adres URL, który musi być ścieżką względną do punktu końcowego usługi Azure Resource Manager. Może to być ścieżka statyczna lub może być tworzona dynamicznie, odwołując się do wartości wyjściowych innych kontrolek.Na przykład wywołanie usługi Azure Resource Manager do dostawcy
Microsoft.Network/expressRouteCircuits
zasobów."path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}?api-version=2022-01-01"
Właściwość jest opcjonalna
request.body
. Użyj go, aby określić treść JSON, która jest wysyłana z żądaniem. Treść może być zawartością statyczną lub konstruowana dynamicznie, odwołując się do wartości wyjściowych z innych kontrolek.
Przykład
W poniższym przykładzie providersApi
element używa elementu ArmApiControl
i wywołuje interfejs API, aby uzyskać tablicę obiektów dostawcy.
Właściwość providersDropDown
elementu jest skonfigurowana do używania allowedValues
tablicy i pobierania nazw dostawców. Nazwy dostawców są wyświetlane na liście rozwijanej.
providerName
Właściwość output
zawiera nazwę dostawcy wybraną z listy rozwijanej. Dane wyjściowe mogą służyć do przekazywania wartości do parametru w szablonie usługi Azure Resource Manager.
{
"$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')]"
}
}
}
Przykład użycia request.body
właściwości znajduje się w przykładzie ArmApiControl
jednowierszowym microsoft.Common.TextBox. Ten przykład sprawdza dostępność nazwy konta magazynu i zwraca komunikat, jeśli nazwa jest niedostępna.
Następne kroki
- Aby zapoznać się z wprowadzeniem do tworzenia definicji interfejsu użytkownika, zobacz CreateUiDefinition.json dla środowiska tworzenia aplikacji zarządzanej platformy Azure.
- Opis typowych właściwości w elementach interfejsu użytkownika można znaleźć w temacie CreateUiDefinition elements (Tworzenie elementów interfejsu użytkownika).
- Aby dowiedzieć się więcej o funkcjach, takich jak
map
,basics
iparse
, zobacz CreateUiDefinition functions (Funkcje CreateUiDefinition).