Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Identyfikator szablonu: convertarraytoobject
Konwertuje tablicę w treści na obiekt JSON zawierający elementy identyfikowane przez klucz określony przez użytkownika. Ten szablon jest dostępny w Power Apps i Power Automate.
Aby rozpocząć, należy określić ścieżkę do obiektu nadrzędnego lub kolekcji oraz ścieżkę podrzędnej właściwości w obrębie elementu nadrzędnego, w którym znajduje się tablica. Następnie jako klucz obiektu należy określić właściwość w obrębie poszczególnych elementów tablicy. Istnienie takiego klucza jest konieczne, aby transformacja miała sens, ponieważ klucze obiektowe powinny być unikalne i oczekuje się, że klucz obiektowy wyjaśni resztę właściwości, które staną się częścią wartości. Na koniec określ ścieżkę, do której będzie pisana nowa właściwość obiektu.
Rzeczy, o których należy pamiętać:
- Ścieżka podrzędna może pozostać pusta, jeśli element nadrzędny jest macierzą, którą chcesz przekształcić.
- W celu zastąpienia istniejącej tablicy należy podać uprzednio określoną ścieżkę nadrzędną i ścieżkę podrzędną właściwości subPath.
- Aby zachować określony klucz obiektu jako właściwość w nowym obiekcie, ustaw opcję „Zachowaj klucz” na „true” (która jest domyślna, jeśli pozostanie pusta). W przeciwnym razie należy ustawić opcję na „fałsz”.
Przykłady
Przyjrzyjmy się kilku przykładom, które używają następujących parametrów.
Przykład 1
Dane wejściowe JSON:
{
"peopleArray":[
{
"Name": "XYZ",
"Age": "30"
},
{
"Name": "ABC",
"Age": "23"
}
]
}
Parametr wejściowy | Wartość |
propertyParentPath | @body() |
propertySubPath | peopleArray |
keyWithinCollectionPath | Nazwa/nazwisko |
newPropertyPath | peopleObject |
retainKey | fałsz |
Dane wyjściowe JSON:
{
"peopleArray":[
{
"Name": "XYZ",
"Age": "30"
},
{
"Name": "ABC",
"Age": "23"
}
],
"peopleObject":{
"XYZ":{
"Age": "30"
},
"ABC":{
"Age": "23"
}
}
}
Przykład 2
Dane wejściowe JSON
{
"sets":[
{
"people":[
{
"Name": "XYZ",
"Age": "30"
},
{
"Name": "ABC",
"Age": "23"
}
]
},
{
"people":[
{
"Name": "PQR",
"Age": "32"
},
{
"Name": "MNO",
"Age": "26"
}
]
}
]
}
Parametr wejściowy | Wartość |
propertyParentPath | @body().sets |
propertySubPath | people |
keyWithinCollectionPath | Imię i nazwisko/nazwa |
newPropertyPath | ludzie |
retainKey | prawda |
Dane wyjściowe JSON:
{
"sets":[
{
"people":{
"XYZ":{
"Name": "XYZ",
"Age": "30"
},
"ABC":{
"Name": "ABC",
"Age": "23"
}
}
},
{
"people":{
"PQR":{
"Name": "PQR",
"Age": "32"
},
"MNO":{
"Name": "MNO",
"Age": "26"
}
}
}
]
}
Należy pamiętać, że ponieważ element nadrzędny sets
jest kolekcją, transformacja jest stosowana do każdej ścieżki people
podrzędnej, a klucz Name
jest zachowywany, ponieważ retainKey jest ustawiony na wartość true.
Przykład z łączników typu open source
Mamy jedno wystąpienie tego szablonu używane w naszym repozytorium łączników typu open source.
Łącznik | Scenariusz |
Planista | Przekształć tablicę odwołań na obiekt z identyfikatorem będącym kluczem w żądaniu akcji aktualizacji szczegółów zadania. |
Parametry wejściowe
Nazwa | Klucz | Wymagania | Pisz | Opis |
---|---|---|---|---|
Target object or collection path |
x-ms-apimTemplateParameter.propertyParentPath | Prawda | String | Ścieżkę do obiektu lub kolekcji. |
Property subpath |
x-ms-apimTemplateParameter.propertySubPath | String | Ścieżka podrzędnej właściwości w obiekcie lub kolekcji. | |
Path to object key within the array |
x-ms-apimTemplateParameter.keyWithinCollectionPath | Prawda | String | Ścieżka podrzędnej właściwości do klucza w obrębie poszczególnych elementów tablicy. |
Path of the new property |
x-ms-apimTemplateParameter.newPropertyPath | Prawda | String | Ścieżka nowej właściwości. |
Retain key |
x-ms-apimTemplateParameter.retainKey | Wyliczenie | Zachowaj klucz jako właściwość. - prawda - fałsz |
|
Run policy on |
x-ms-apimTemplate-policySection | Prawda | Wyliczenie | Określa, kiedy należy uruchomić tę zasadę - Żądanie: szablon zasad będzie uruchamiany przed wysłaniem żądania do interfejsu API wewnętrznej bazy danych. - Odpowiedź: zasady zostaną wykonane po otrzymaniu odpowiedzi od interfejsu API wewnętrznej bazy danych. |
Operations |
x-ms-apimTemplate-operationName | Tablica | Lista akcji i wyzwalaczy, do których mają zastosowanie te zasady. Jeśli nie zostanie wybrana żadna operacja, te zasady będą miały zastosowanie do wszystkich operacji. |