Transformaties van JSON-claims
Dit artikel bevat voorbeelden voor het gebruik van de JSON-claimtransformaties van het Identity Experience Framework-schema in Azure Active Directory B2C (Azure AD B2C). Zie claimtransformaties voor meer informatie.
CreateJsonArray
Maak een JSON-matrix met één element op basis van een claimwaarde. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | inputClaim | tekenreeks | De claim die moet worden toegevoegd aan de uitvoerclaim. |
OutputClaim | outputClaim | tekenreeks | De JSON-tekenreeks die wordt geproduceerd nadat deze claimtransformatie is aangeroepen. |
Voorbeeld van CreateJsonArray
In het volgende voorbeeld wordt een JSON-matrix met één matrix gemaakt.
<ClaimsTransformation Id="createlJsonPayload" TransformationMethod="CreateJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Invoerclaims:
- inputClaim: someone@example.com
- Uitvoerclaims:
- outputClaim: ["someone@contoso.com"]
GenerateJson
Gebruik claimwaarden of constanten om een JSON-tekenreeks te genereren. De padtekenreeks na punt notatie wordt gebruikt om aan te geven waar de gegevens in een JSON-tekenreeks moeten worden ingevoegd. Nadat u op puntjes hebt gesplitst, worden alle gehele getallen geïnterpreteerd als de index van een JSON-matrix en niet-gehele getallen als de index van een JSON-object.
Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | Een tekenreeks na punt notatie | tekenreeks | Het JsonPath van de JSON waarin de claimwaarde wordt ingevoegd. |
InputParameter | Een tekenreeks na punt notatie | tekenreeks | Het JsonPath van de JSON waarin de constante tekenreekswaarde wordt ingevoegd. |
OutputClaim | outputClaim | tekenreeks | De gegenereerde JSON-tekenreeks. |
JSON-matrices
Als u JSON-objecten wilt toevoegen aan een JSON-matrix, gebruikt u de indeling van de matrixnaam en de index in de matrix. De matrix is gebaseerd op nul. Begin met nul tot N, zonder een willekeurig getal over te slaan. De items in de matrix kunnen elk object bevatten. Het eerste item bevat bijvoorbeeld twee objecten, app en appId. Het tweede item bevat één object, programma. Het derde item bevat vier objecten, kleur, taal, logo en achtergrond.
In het volgende voorbeeld ziet u hoe u JSON-matrices configureert. De e-mailmatrix gebruikt de InputClaims
matrix met dynamische waarden. De waardenmatrix maakt gebruik van de InputParameters
matrix met statische waarden.
<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>
Het resultaat van deze claimtransformatie:
{
"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"
}
]
}
Als u een JSON-matrix wilt opgeven in zowel de invoerclaims als de invoerparameters, moet u de matrix in het InputClaims
element starten, nul tot N. Ga vervolgens in het InputParameters
element verder met de index van de laatste index.
In het volgende voorbeeld ziet u een matrix die is gedefinieerd in zowel de invoerclaims als de invoerparameters. Het eerste item van de waardenmatrix values.0
wordt gedefinieerd in de invoerclaims. De invoerparameters blijven van index één values.1
tot en met twee indexen 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>
Voorbeeld van GenerateJson
In het volgende voorbeeld wordt een JSON-tekenreeks gegenereerd op basis van de claimwaarde 'email' en 'OTP' en constante tekenreeksen.
<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>
Met de volgende claimtransformatie wordt een JSON-tekenreeksclaim uitgevoerd die de hoofdtekst is van de aanvraag die wordt verzonden naar SendGrid (een e-mailprovider van derden). De structuur van het JSON-object wordt gedefinieerd door de id's in puntnotatie van de InputParameters en de TransformationClaimTypes van de InputClaims. Getallen in de puntnotatie impliceren matrices. De waarden zijn afkomstig uit de waarden van InputClaims en de eigenschappen 'Value' van InputParameters.
- Invoerclaims:
- e-mail, claimtype transformatie personalizations.0.to.0.email: "someone@example.com"
- copiedEmail, transformatieclaimtype personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
- otp, transformatieclaimtype personalizations.0.dynamic_template_data.otp "346349"
- Invoerparameter:
- template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
- from.email: "service@contoso.com"
- personalizations.0.subject "E-mailverificatiecode contoso-account"
- Uitvoerclaim:
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" } }
Een ander voorbeeld van GenerateJson
In het volgende voorbeeld wordt een JSON-tekenreeks gegenereerd op basis van de claimwaarden en constante tekenreeksen.
<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>
Met de volgende claimtransformatie wordt een JSON-tekenreeksclaim uitgevoerd die de hoofdtekst is van de aanvraag die naar een REST API wordt verzonden. De structuur van het JSON-object wordt gedefinieerd door de id's in puntnotatie van de InputParameters en de TransformationClaimTypes van de InputClaims. De waarden zijn afkomstig uit de waarden van InputClaims en de eigenschappen 'Value' van InputParameters.
- Invoerclaims:
- e-mail, claimtype transformatie customerEntity.email: "john.s@contoso.com"
- objectId, transformatie claimtype customerEntity.userObjectId "aaaaaaaa-0000-1111-2222-bbbbbbbb"
- givenName, transformatieclaimtype customerEntity.firstName "John"
- achternaam, transformatie claimtype customerEntity.lastName "Smith"
- Invoerparameter:
- customerEntity.role.name: 'Beheerder'
- customerEntity.role.id 1
- Uitvoerclaim:
requestBody:
{ "customerEntity":{ "email":"john.s@contoso.com", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
De transformatie van GenerateJson-claims accepteert gewone tekenreeksen. Als een invoerclaim een JSON-tekenreeks bevat, wordt die tekenreeks ontsnapt. Als u in het volgende voorbeeld de e-mailuitvoer van CreateJsonArray hierboven gebruikt, is dat ["someone@contoso.com"], als invoerparameter, ziet de e-mail eruit zoals wordt weergegeven in de volgende JSON-claim:
- Uitvoerclaim:
requestBody:
{ "customerEntity":{ "email":"[\"someone@contoso.com\"]", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
GetClaimFromJson
Haal een opgegeven element op uit een JSON-gegevens. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | inputJson | tekenreeks | De claims die worden gebruikt door de claimtransformatie om het item op te halen. |
InputParameter | claimToExtract | tekenreeks | de naam van het JSON-element dat moet worden geëxtraheerd. |
OutputClaim | extractedClaim | tekenreeks | De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen, de elementwaarde die is opgegeven in de invoerparameter claimToExtract . |
Voorbeeld van GetClaimFromJson
In het volgende voorbeeld heeft de claimtransformatie het emailAddress
element uit de JSON-gegevens geëxtraheerd: {"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>
- Invoerclaims:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Iemand"}
- Invoerparameter:
- claimToExtract: emailAddress
- Uitvoerclaims:
- extractedClaim: someone@example.com
Een ander voorbeeld van GetClaimFromJson
De getClaimFromJson-claimtransformatie haalt één element op uit een JSON-gegevens. In het voorgaande voorbeeld is het emailAddress. Als u de displayName wilt ophalen, maakt u een andere claimtransformatie. Voorbeeld:
<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>
- Invoerclaims:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Iemand"}
- Invoerparameter:
- claimToExtract: displayName
- Uitvoerclaims:
- extractedClaim: Iemand
GetClaimsFromJsonArray
Haal een lijst met opgegeven elementen op uit Json-gegevens. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | jsonSourceClaim | tekenreeks | De claim met de JSON-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de claims op te halen. |
InputParameter | errorOnMissingClaims | boolean | Hiermee geeft u op of er een fout moet worden gegenereerd als een van de claims ontbreekt. |
InputParameter | includeEmptyClaims | tekenreeks | Geef op of lege claims moeten worden opgenomen. |
InputParameter | jsonSourceKeyName | tekenreeks | Elementsleutelnaam |
InputParameter | jsonSourceValueName | tekenreeks | Naam van elementwaarde |
OutputClaim | Verzameling | tekenreeks, int, booleaanse waarde en datum/tijd | Lijst met claims die moeten worden geëxtraheerd. De naam van de claim moet gelijk zijn aan de naam die is opgegeven in de invoerclaim van jsonSourceClaim . |
Voorbeeld van GetClaimsFromJsonArray
In het volgende voorbeeld extraheert de claimtransformatie de volgende claims: e-mail (tekenreeks), displayName (tekenreeks), membershipNum (int), actief (booleaanse waarde) en geboortedatum (datum/tijd) uit de JSON-gegevens.
<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>
Invoerclaims:
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" } ]
Invoerparameters:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: sleutel
- jsonSourceValueName: waarde
De uitvoerclaims:
- e-mail: "someone@example.com"
- displayName: 'Iemand'
- membershipID: 6353399
- actief: waar
- geboortedatum: 2005-09-23T00:00:00Z
GetClaimsFromJsonArrayV2
Haal een lijst met opgegeven elementen op uit JSON-elementen van een tekenreeksverzameling. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | jsonSourceClaim | StringCollection | De verzameling van tekenreeksen met de JSON-nettoladingen. Deze claim wordt gebruikt door de claimtransformatie om de claims op te halen. |
InputParameter | errorOnMissingClaims | boolean | Hiermee geeft u op of er een fout moet worden gegenereerd als een van de claims ontbreekt. |
InputParameter | includeEmptyClaims | tekenreeks | Geef op of lege claims moeten worden opgenomen. |
InputParameter | jsonSourceKeyName | tekenreeks | Elementsleutelnaam |
InputParameter | jsonSourceValueName | tekenreeks | Naam van elementwaarde |
OutputClaim | Verzameling | tekenreeks, int, booleaanse waarde en datum/tijd | Lijst met claims die moeten worden geëxtraheerd. De naam van de claim moet gelijk zijn aan de naam die is opgegeven in de invoerclaim van jsonSourceClaim . |
Voorbeeld van GetClaimsFromJsonArrayV2
In het volgende voorbeeld extraheert de claimtransformatie de volgende claims: e-mail (tekenreeks), displayName (tekenreeks), membershipNum (int), actief (booleaanse waarde) en geboortedatum (datum/tijd) uit de JSON-gegevens.
<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>
Invoerclaims:
jsonSourceClaim[0] (tekenreeksverzameling eerste element):
{ "key": "email", "value": "someone@example.com" }
jsonSourceClaim[1] (tweede element tekenreeksverzameling):
{ "key": "displayName", "value": "Someone" }
jsonSourceClaim[2] (derde element tekenreeksverzameling):
{ "key": "membershipID", "value": 6353399 }
jsonSourceClaim[3] (vierde element tekenreeksverzameling):
{ "key": "active", "value": true }
jsonSourceClaim[4] (vijfde element van tekenreeksverzameling):
{ "key": "birthDate", "value": "2005-09-23T00:00:00Z" }
Invoerparameters:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: sleutel
- jsonSourceValueName: waarde
De uitvoerclaims:
- e-mail: "someone@example.com"
- displayName: 'Iemand'
- membershipID: 6353399
- actief: waar
- geboortedatum: 2005-09-23T00:00:00Z
GetNumericClaimFromJson
Hiermee haalt u een opgegeven numeriek (lang) element op uit een JSON-gegevens. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | inputJson | tekenreeks | De claim met de JSON-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de numerieke claim op te halen. |
InputParameter | claimToExtract | tekenreeks | De naam van het JSON-element dat moet worden geëxtraheerd. |
OutputClaim | extractedClaim | long | De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen, de waarde van het element die is opgegeven in de invoerparameters claimToExtract . |
Voorbeeld van GetNumericClaimFromJson
In het volgende voorbeeld extraheert de claimtransformatie het id
element uit de JSON-gegevens.
<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>
Invoerclaims:
inputJson:
{ "emailAddress": "someone@example.com", "displayName": "Someone", "id": 6353399 }
Invoerparameters
- claimToExtract: id
De uitvoerclaims:
- extractedClaim: 6353399
GetSingleItemFromJson
Hiermee haalt u het eerste element op uit een JSON-gegevens. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | inputJson | tekenreeks | De claim met de JSON-nettolading. Deze claim wordt gebruikt door de claimtransformatie om het item op te halen uit de JSON-gegevens. |
OutputClaim | sleutel | tekenreeks | De eerste elementsleutel in de JSON. |
OutputClaim | waarde | tekenreeks | De eerste elementwaarde in de JSON. |
Voorbeeld van GetSingleItemFromJson
In het volgende voorbeeld extraheert de claimtransformatie het eerste element (de opgegeven naam) uit de JSON-gegevens.
<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>
Invoerclaims:
inputJson:
{ "givenName": "Emily", "lastName": "Smith" }
De uitvoerclaims:
- sleutel: givenName
- waarde: Emilty
GetSingleValueFromJsonArray
Hiermee haalt u het eerste element op uit een JSON-gegevensmatrix. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | inputJsonClaim | tekenreeks | De claim met de JSON-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de waarde op te halen uit de JSON-matrix. |
OutputClaim | extractedClaim | tekenreeks | De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen, het eerste element in de JSON-matrix. |
Voorbeeld van GetSingleValueFromJsonArray
In het volgende voorbeeld extraheert de claimtransformatie het eerste element (e-mailadres) uit de JSON-matrix ["someone@example.com", "Someone", 6353399]
.
<ClaimsTransformation Id="GetEmailFromJson" TransformationMethod="GetSingleValueFromJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="userData" TransformationClaimType="inputJsonClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Invoerclaims:
- inputJsonClaim: [""someone@example.com, "Iemand", 6353399]
- Uitvoerclaims:
- extractedClaim: someone@example.com
XmlStringToJsonString
XML-gegevens converteren naar JSON-indeling. Bekijk de livedemo van deze claimtransformatie.
Element | TransformationClaimType | Gegevenstype | Opmerkingen |
---|---|---|---|
InputClaim | xml | tekenreeks | De claim met de XML-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de gegevens te converteren van XML naar JSON-indeling. |
OutputClaim | json | tekenreeks | De claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen, de gegevens in JSON-indeling. |
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
<InputClaims>
<InputClaim ClaimTypeReferenceId="intpuXML" TransformationClaimType="xml" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
</OutputClaims>
</ClaimsTransformation>
Voorbeeld van XmlStringToJsonString
In het volgende voorbeeld converteert de claimtransformatie de volgende XML-gegevens naar de JSON-indeling.
Invoerclaim:
<user>
<name>Someone</name>
<email>someone@example.com</email>
</user>
De uitvoerclaim:
{
"user": {
"name":"Someone",
"email":"someone@example.com"
}
}
Volgende stappen
- Meer voorbeelden van claimtransformaties kunt u vinden in de GitHub-opslagplaats van de Azure AD B2C-community