Przekształcenia oświadczeń JSON
Ten artykuł zawiera przykłady użycia przekształceń oświadczeń JSON schematu struktury środowiska tożsamości w usłudze Azure Active Directory B2C (Azure AD B2C). Aby uzyskać więcej informacji, zobacz przekształcenia oświadczeń.
CreateJsonArray
Utwórz tablicę pojedynczych elementów JSON na podstawie wartości oświadczenia. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | inputClaim | string | Oświadczenie, które ma zostać dodane do oświadczenia wyjściowego. |
OutputClaim | outputClaim | string | Ciąg JSON, który jest generowany po wywołaniu tej transformacji oświadczeń. |
Przykład elementu CreateJsonArray
Poniższy przykład tworzy pojedynczą tablicę JSON.
<ClaimsTransformation Id="createlJsonPayload" TransformationMethod="CreateJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Oświadczenia wejściowe:
- inputClaim: someone@example.com
- Oświadczenia wyjściowe:
- outputClaim: [""someone@contoso.com]
GenerateJson
Użyj wartości oświadczeń lub stałych, aby wygenerować ciąg JSON. Ciąg ścieżki po notacji kropkowej służy do wskazywania, gdzie należy wstawić dane do ciągu JSON. Po podzieleniu według kropek wszystkie liczby całkowite są interpretowane jako indeks tablicy JSON, a liczby inne niż liczby całkowite są interpretowane jako indeks obiektu JSON.
Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | Dowolny ciąg po notacji kropkowej | string | JsonPath kodu JSON, do którego zostanie wstawiona wartość oświadczenia. |
InputParameter | Dowolny ciąg po notacji kropkowej | string | JsonPath kodu JSON, do którego zostanie wstawiona stała wartość ciągu. |
OutputClaim | outputClaim | string | Wygenerowany ciąg JSON. |
Tablice JSON
Aby dodać obiekty JSON do tablicy JSON, użyj formatu nazwy tablicy i indeksu w tablicy. Tablica ma wartość zero. Zacznij od zera do N, bez pomijania dowolnej liczby. Elementy w tablicy mogą zawierać dowolny obiekt. Na przykład pierwszy element zawiera dwa obiekty, aplikację i identyfikator appId. Drugi element zawiera pojedynczy obiekt, program. Trzeci element zawiera cztery obiekty, kolor, język, logo i tło.
W poniższym przykładzie pokazano, jak skonfigurować tablice JSON. Tablica wiadomości e-mail używa wartości InputClaims
z wartościami dynamicznymi. Tablica wartości używa wartości InputParameters
ze statycznymi wartościami.
<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="mailToName1" TransformationClaimType="emails.0.name" />
<InputClaim ClaimTypeReferenceId="mailToAddress1" TransformationClaimType="emails.0.address" />
<InputClaim ClaimTypeReferenceId="mailToName2" TransformationClaimType="emails.1.name" />
<InputClaim ClaimTypeReferenceId="mailToAddress2" TransformationClaimType="emails.1.address" />
</InputClaims>
<InputParameters>
<InputParameter Id="values.0.app" DataType="string" Value="Mobile app" />
<InputParameter Id="values.0.appId" DataType="string" Value="123" />
<InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
<InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
<InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
<InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
<InputParameter Id="values.2.background" DataType="string" Value="White" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
Wynik tego przekształcenia oświadczeń:
{
"values": [
{
"app": "Mobile app",
"appId": "123"
},
{
"program": "Holidays"
},
{
"color": "Yellow",
"language": "Spanish",
"logo": "contoso.png",
"background": "White"
}
],
"emails": [
{
"name": "Joni",
"address": "joni@contoso.com"
},
{
"name": "Emily",
"address": "emily@contoso.com"
}
]
}
Aby określić tablicę JSON zarówno w oświadczeniach wejściowych, jak i parametrach wejściowych, należy uruchomić tablicę w elemecie InputClaims
zero do N. Następnie w elemecie InputParameters
kontynuuj indeks z ostatniego indeksu.
W poniższym przykładzie pokazano tablicę zdefiniowaną zarówno w oświadczeniach wejściowych, jak i parametrach wejściowych. Pierwszy element tablicy values.0
wartości jest zdefiniowany w oświadczeniach wejściowych. Parametry wejściowe są kontynuowane z indeksu jeden values.1
do dwóch indeksów values.2
.
<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="app" TransformationClaimType="values.0.app" />
<InputClaim ClaimTypeReferenceId="appId" TransformationClaimType="values.0.appId" />
</InputClaims>
<InputParameters>
<InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
<InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
<InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
<InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
<InputParameter Id="values.2.background" DataType="string" Value="White" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
Przykład pliku GenerateJson
Poniższy przykład generuje ciąg JSON na podstawie wartości oświadczenia "email" i "OTP" i ciągów stałych.
<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="personalizations.0.to.0.email" />
<InputClaim ClaimTypeReferenceId="otp" TransformationClaimType="personalizations.0.dynamic_template_data.otp" />
<InputClaim ClaimTypeReferenceId="copiedEmail" TransformationClaimType="personalizations.0.dynamic_template_data.verify-email" />
</InputClaims>
<InputParameters>
<InputParameter Id="template_id" DataType="string" Value="d-4c56ffb40fa648b1aa6822283df94f60"/>
<InputParameter Id="from.email" DataType="string" Value="service@contoso.com"/>
<InputParameter Id="personalizations.0.subject" DataType="string" Value="Contoso account email verification code"/>
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
</OutputClaims>
</ClaimsTransformation>
Następujące oświadczenia przekształcenia wyprowadza oświadczenie ciągu JSON, które będzie treścią żądania wysłanego do usługi SendGrid (dostawcy poczty e-mail innej firmy). Struktura obiektu JSON jest definiowana przez identyfikatory w notacji kropkowej parametrów InputParameters i TransformationClaimTypes elementu InputClaims. Liczby w notacji kropkowej oznaczają tablice. Wartości pochodzą z wartości InputClaims i właściwości InputParameters "Value".
- Oświadczenia wejściowe:
- adres e-mail, typ oświadczenia przekształcenia personalizations.0.to.0.email: "someone@example.com"
- copiedEmail, typ oświadczenia przekształcenia personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
- otp, typ oświadczenia przekształcenia personalizations.0.dynamic_template_data.otp "346349"
- Parametr wejściowy:
- template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
- from.email: "service@contoso.com"
- personalizacja.0.subject "Kod weryfikacyjny poczty e-mail konta Contoso"
- Oświadczenie wyjściowe:
outputClaim:
{ "personalizations": [ { "to": [ { "email": "someone@example.com" } ], "dynamic_template_data": { "otp": "346349", "verify-email" : "someone@example.com" }, "subject": "Contoso account email verification code" } ], "template_id": "d-989077fbba9746e89f3f6411f596fb96", "from": { "email": "service@contoso.com" } }
Inny przykład funkcji GenerateJson
Poniższy przykład generuje ciąg JSON na podstawie wartości oświadczenia i ciągów stałych.
<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="customerEntity.email" />
<InputClaim ClaimTypeReferenceId="objectId" TransformationClaimType="customerEntity.userObjectId" />
<InputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="customerEntity.firstName" />
<InputClaim ClaimTypeReferenceId="surname" TransformationClaimType="customerEntity.lastName" />
</InputClaims>
<InputParameters>
<InputParameter Id="customerEntity.role.name" DataType="string" Value="Administrator"/>
<InputParameter Id="customerEntity.role.id" DataType="long" Value="1"/>
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
</OutputClaims>
</ClaimsTransformation>
Następujące oświadczenia przekształcenia wyprowadza oświadczenie ciągu JSON, które będzie treścią żądania wysłanego do interfejsu API REST. Struktura obiektu JSON jest definiowana przez identyfikatory w notacji kropkowej parametrów InputParameters i TransformationClaimTypes elementu InputClaims. Wartości pochodzą z wartości InputClaims i właściwości InputParameters "Value".
- Oświadczenia wejściowe:
- adres e-mail, typ oświadczenia przekształcenia customerEntity.email: "john.s@contoso.com"
- objectId, typ oświadczenia przekształcenia customerEntity.userObjectId "aaaaa-0000-1111-2222-bbbbbbbbbb"
- givenName, typ oświadczenia przekształcenia customerEntity.firstName "John"
- nazwisko, typ oświadczenia przekształcenia customerEntity.lastName "Smith"
- Parametr wejściowy:
- customerEntity.role.name: "Administrator"
- customerEntity.role.id 1
- Oświadczenie wyjściowe:
requestBody:
{ "customerEntity":{ "email":"john.s@contoso.com", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
Przekształcenie oświadczeń GenerateJson akceptuje zwykłe ciągi. Jeśli oświadczenie wejściowe zawiera ciąg JSON, ten ciąg zostanie usunięty. W poniższym przykładzie, jeśli użyjesz danych wyjściowych wiadomości e-mail z powyższego polecenia CreateJsonArray, to jest to ["someone@contoso.com"], jako parametr wejściowy, wiadomość e-mail będzie wyglądać tak, jak pokazano w poniższym oświadczeniu JSON:
- Oświadczenie wyjściowe:
requestBody:
{ "customerEntity":{ "email":"[\"someone@contoso.com\"]", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
GetClaimFromJson
Pobierz określony element z danych JSON. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | inputJson | string | Oświadczenia, które są używane przez przekształcenie oświadczeń w celu pobrania elementu. |
InputParameter | claimToExtract | string | nazwa elementu JSON do wyodrębnienia. |
OutputClaim | extractedClaim | string | Oświadczenie, które jest generowane po wywołaniu tego przekształcenia oświadczeń, wartość elementu określona w claimToExtract parametr wejściowy. |
Przykład polecenia GetClaimFromJson
W poniższym przykładzie przekształcenie oświadczeń wyodrębniło emailAddress
element z danych JSON: {"emailAddress": "someone@example.com", "displayName": "Someone"}
<ClaimsTransformation Id="GetEmailClaimFromJson" TransformationMethod="GetClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="emailAddress" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="extractedEmail" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Oświadczenia wejściowe:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Ktoś"}
- Parametr wejściowy:
- claimToExtract: emailAddress
- Oświadczenia wyjściowe:
- extractedClaim: someone@example.com
Inny przykład polecenia GetClaimFromJson
Przekształcenie oświadczeń GetClaimFromJson pobiera pojedynczy element z danych JSON. W poprzednim przykładzie adres e-mailAddress. Aby uzyskać nazwę displayName, utwórz kolejne przekształcenie oświadczeń. Na przykład:
<ClaimsTransformation Id="GetDispalyNameClaimFromJson" TransformationMethod="GetClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="displayName" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="displayName" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Oświadczenia wejściowe:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Ktoś"}
- Parametr wejściowy:
- claimToExtract: displayName
- Oświadczenia wyjściowe:
- extractedClaim: Ktoś
GetClaimsFromJsonArray
Pobierz listę określonych elementów z danych Json. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | jsonSourceClaim | string | Oświadczenie z ładunkiem JSON. To oświadczenie jest używane przez przekształcenie oświadczeń w celu uzyskania oświadczeń. |
InputParameter | errorOnMissingClaims | boolean | Określa, czy zgłaszać błąd, jeśli brakuje jednego z oświadczeń. |
InputParameter | includeEmptyClaims | string | Określ, czy mają być uwzględniane puste oświadczenia. |
InputParameter | jsonSourceKeyName | string | Nazwa klucza elementu |
InputParameter | jsonSourceValueName | string | Nazwa wartości elementu |
OutputClaim | Kolekcja | string, int, boolean i datetime | Lista oświadczeń do wyodrębnienia. Nazwa oświadczenia powinna być równa tej określonej w jsonSourceClaim oświadczenia wejściowego. |
Przykład getClaimsFromJsonArray
W poniższym przykładzie przekształcenie oświadczeń wyodrębnia następujące oświadczenia: email (ciąg), displayName (string), membershipNum (int), active (boolean) i birthDate (datetime) z danych JSON.
<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
</InputClaims>
<InputParameters>
<InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
<InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
<InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
<InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="membershipID" />
<OutputClaim ClaimTypeReferenceId="active" />
<OutputClaim ClaimTypeReferenceId="birthDate" />
</OutputClaims>
</ClaimsTransformation>
Oświadczenia wejściowe:
jsonSourceClaim:
[ { "key": "email", "value": "someone@example.com" }, { "key": "displayName", "value": "Someone" }, { "key": "membershipID", "value": 6353399 }, { "key": "active", "value": true }, { "key": "birthDate", "value": "2005-09-23T00:00:00Z" } ]
Parametry wejściowe:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: klucz
- jsonSourceValueName: wartość
Oświadczenia wyjściowe:
- e-mail: "someone@example.com"
- displayName: "Ktoś"
- membershipID: 6353399
- aktywne: true
- birthDate: 2005-09-23T00:00:00Z
GetClaimsFromJsonArrayV2
Pobierz listę określonych elementów z elementów JSON kolekcji ciągów. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | jsonSourceClaim | stringCollection | Oświadczenie kolekcji ciągów z ładunkami JSON. To oświadczenie jest używane przez przekształcenie oświadczeń w celu uzyskania oświadczeń. |
InputParameter | errorOnMissingClaims | boolean | Określa, czy zgłaszać błąd, jeśli brakuje jednego z oświadczeń. |
InputParameter | includeEmptyClaims | string | Określ, czy mają być uwzględniane puste oświadczenia. |
InputParameter | jsonSourceKeyName | string | Nazwa klucza elementu |
InputParameter | jsonSourceValueName | string | Nazwa wartości elementu |
OutputClaim | Kolekcja | string, int, boolean i datetime | Lista oświadczeń do wyodrębnienia. Nazwa oświadczenia powinna być równa tej określonej w jsonSourceClaim oświadczenia wejściowego. |
Przykład getClaimsFromJsonArrayV2
W poniższym przykładzie przekształcenie oświadczeń wyodrębnia następujące oświadczenia: email (ciąg), displayName (string), membershipNum (int), active (boolean) i birthDate (datetime) z danych JSON.
<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArrayV2">
<InputClaims>
<InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
</InputClaims>
<InputParameters>
<InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
<InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
<InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
<InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="membershipID" />
<OutputClaim ClaimTypeReferenceId="active" />
<OutputClaim ClaimTypeReferenceId="birthDate" />
</OutputClaims>
</ClaimsTransformation>
Oświadczenia wejściowe:
jsonSourceClaim[0] (pierwszy element kolekcji ciągów):
{ "key": "email", "value": "someone@example.com" }
jsonSourceClaim[1] (drugi element kolekcji ciągów):
{ "key": "displayName", "value": "Someone" }
jsonSourceClaim[2] (trzeci element kolekcji ciągów):
{ "key": "membershipID", "value": 6353399 }
jsonSourceClaim[3] (czwarty element kolekcji ciągów):
{ "key": "active", "value": true }
jsonSourceClaim[4] (piąty element kolekcji ciągów):
{ "key": "birthDate", "value": "2005-09-23T00:00:00Z" }
Parametry wejściowe:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: klucz
- jsonSourceValueName: wartość
Oświadczenia wyjściowe:
- e-mail: "someone@example.com"
- displayName: "Ktoś"
- membershipID: 6353399
- aktywne: true
- birthDate: 2005-09-23T00:00:00Z
GetNumericClaimFromJson
Pobiera określony element liczbowy (długi) z danych JSON. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | inputJson | string | Oświadczenie z ładunkiem JSON. To oświadczenie jest używane przez przekształcenie oświadczeń w celu uzyskania oświadczenia liczbowego. |
InputParameter | claimToExtract | string | Nazwa elementu JSON do wyodrębnienia. |
OutputClaim | extractedClaim | długi | Oświadczenie, które jest tworzone po wywołaniu tego przekształcenia oświadczeń, wartość elementu określona w parametrach wejściowych claimToExtract . |
Przykład polecenia GetNumericClaimFromJson
W poniższym przykładzie przekształcenie oświadczeń wyodrębnia id
element z danych JSON.
<ClaimsTransformation Id="GetIdFromResponse" TransformationMethod="GetNumericClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="exampleInputClaim" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="id" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="membershipId" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
Oświadczenia wejściowe:
inputJson:
{ "emailAddress": "someone@example.com", "displayName": "Someone", "id": 6353399 }
Parametry wejściowe
- claimToExtract: id
Oświadczenia wyjściowe:
- extractedClaim: 6353399
GetSingleItemFromJson
Pobiera pierwszy element z danych JSON. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | inputJson | string | Oświadczenie z ładunkiem JSON. To oświadczenie jest używane przez przekształcenie oświadczeń w celu pobrania elementu z danych JSON. |
OutputClaim | klucz | string | Pierwszy klucz elementu w formacie JSON. |
OutputClaim | wartość | string | Pierwsza wartość elementu w formacie JSON. |
Przykład getSingleItemFromJson
W poniższym przykładzie przekształcenie oświadczeń wyodrębnia pierwszy element (nazwę) z danych JSON.
<ClaimsTransformation Id="GetGivenNameFromResponse" TransformationMethod="GetSingleItemFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="json" TransformationClaimType="inputJson" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="givenNameKey" TransformationClaimType="key" />
<OutputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="value" />
</OutputClaims>
</ClaimsTransformation>
Oświadczenia wejściowe:
inputJson:
{ "givenName": "Emily", "lastName": "Smith" }
Oświadczenia wyjściowe:
- key: givenName
- wartość: Emilty
GetSingleValueFromJsonArray
Pobiera pierwszy element z tablicy danych JSON. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | inputJsonClaim | string | Oświadczenie z ładunkiem JSON. To oświadczenie jest używane przez przekształcenie oświadczeń w celu pobrania wartości z tablicy JSON. |
OutputClaim | extractedClaim | string | Oświadczenie, które jest generowane po wywołaniu tego przekształcenia oświadczeń, pierwszy element w tablicy JSON. |
Przykład getSingleValueFromJsonArray
W poniższym przykładzie przekształcenie oświadczeń wyodrębnia pierwszy element (adres e-mail) z tablicy ["someone@example.com", "Someone", 6353399]
JSON .
<ClaimsTransformation Id="GetEmailFromJson" TransformationMethod="GetSingleValueFromJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="userData" TransformationClaimType="inputJsonClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Oświadczenia wejściowe:
- inputJsonClaim: ["someone@example.com", "Ktoś", 6353399]
- Oświadczenia wyjściowe:
- extractedClaim: someone@example.com
XmlStringToJsonString
Konwertowanie danych XML na format JSON. Zapoznaj się z pokazem live tej transformacji oświadczeń.
Element | TransformationClaimType | Typ danych | Uwagi |
---|---|---|---|
InputClaim | xml | string | Oświadczenie z ładunkiem XML. To oświadczenie jest używane przez przekształcenie oświadczeń w celu przekonwertowania danych z formatu XML na format JSON. |
OutputClaim | json | string | Oświadczenie, które jest tworzone po wywołaniu tego przekształcenia oświadczeń, dane w formacie JSON. |
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
<InputClaims>
<InputClaim ClaimTypeReferenceId="intpuXML" TransformationClaimType="xml" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
</OutputClaims>
</ClaimsTransformation>
Przykład elementu XmlStringToJsonString
W poniższym przykładzie przekształcenie oświadczeń konwertuje następujące dane XML na format JSON.
Oświadczenie wejściowe:
<user>
<name>Someone</name>
<email>someone@example.com</email>
</user>
Oświadczenie wyjściowe:
{
"user": {
"name":"Someone",
"email":"someone@example.com"
}
}
Następne kroki
- Znajdź więcej przykładów przekształcania oświadczeń w repozytorium GitHub społeczności usługi Azure AD B2C