Share via


JSON-claimtransformaties

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 van een claimwaarde. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
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 één JSON-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 puntnotatie wordt gebruikt om aan te geven waar de gegevens in een JSON-tekenreeks moeten worden ingevoegd. Na het splitsen met puntjes worden alle gehele getallen geïnterpreteerd als de index van een JSON-matrix en worden niet-gehele getallen geïnterpreteerd als de index van een JSON-object.

Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim Tekenreeks volgend op puntnotatie tekenreeks Het JsonPath van de JSON waarin de claimwaarde wordt ingevoegd.
InputParameter Tekenreeks volgend op puntnotatie 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 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, een 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 met dynamische waarden. De waardenmatrix gebruikt de InputParameters 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 starten in het InputClaims -element, van 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 waardenmatrixvalues.0 wordt gedefinieerd in de invoerclaims. De invoerparameters gaan door 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>

De volgende claimtransformatie voert een JSON-tekenreeksclaim uit die de hoofdtekst is van de aanvraag die naar SendGrid (een externe e-mailprovider) 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. Getallen in de puntnotatie impliceren matrices. De waarden zijn afkomstig uit de waarden van InputClaims en de eigenschappen 'Value' van InputParameters.

  • De invoerclaims:
    • e-mail, type transformatieclaim personalizations.0.to.0.email: "someone@example.com"
    • copiedEmail, type transformatieclaim personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
    • otp, type transformatieclaim personalizations.0.dynamic_template_data.otp "346349"
  • Invoerparameter:
    • template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
    • from.email: "service@contoso.com"
    • personalizations.0.subject "E-mailverificatiecode contoso-account"
  • De 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>

De volgende claimtransformatie voert een JSON-tekenreeksclaim uit 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.

  • De invoerclaims:
    • e-mail, type transformatieclaim customerEntity.email: "john.s@contoso.com"
    • objectId, transformatieclaimtype customerEntity.userObjectId "01234567-89ab-cdef-0123-456789abcdef"
    • givenName, transformatieclaimtype customerEntity.firstName "John"
    • achternaam, transformatieclaimtype customerEntity.lastName "Smith"
  • Invoerparameter:
    • customerEntity.role.name: "Beheerder"
    • customerEntity.role.id 1
  • De uitvoerclaim:
    • requestBody:

      {
         "customerEntity":{
            "email":"john.s@contoso.com",
            "userObjectId":"01234567-89ab-cdef-0123-456789abcdef",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

De claimtransformatie GenerateJson accepteert tekenreeksen zonder opmaak. Als een invoerclaim een JSON-tekenreeks bevat, wordt die tekenreeks ge escaped. Als u in het volgende voorbeeld e-mailuitvoer van CreateJsonArray hierboven gebruikt, dat wil zeggen ["someone@contoso.com"], als invoerparameter, ziet de e-mail eruit zoals wordt weergegeven in de volgende JSON-claim:

  • De uitvoerclaim:
    • requestBody:

      {
         "customerEntity":{
            "email":"[\"someone@contoso.com\"]",
            "userObjectId":"01234567-89ab-cdef-0123-456789abcdef",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

GetClaimFromJson

Haal een opgegeven element op uit een JSON-gegevens. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
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 geëxtraheerd uit de JSON-gegevens: {"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>
  • De invoerclaims:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Iemand"}
  • Invoerparameter:
    • claimToExtract: emailAddress
  • De 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. Bijvoorbeeld:

<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>
  • De invoerclaims:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Iemand"}
  • Invoerparameter:
    • claimToExtract: displayName
  • De uitvoerclaims:
    • extractedClaim: Iemand

GetClaimsFromJsonArray

Haal een lijst met opgegeven elementen op uit Json-gegevens. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim jsonSourceClaim tekenreeks De claim met de JSON-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de claims op te halen.
InputParameter errorOnMissingClaims booleaans Hiermee geeft u op of een fout wordt gegenereerd als een van de claims ontbreekt.
InputParameter includeEmptyClaims tekenreeks Geef op of lege claims moeten worden opgenomen.
InputParameter jsonSourceKeyName tekenreeks Naam van elementsleutel
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 jsonSourceClaim .

Voorbeeld van GetClaimsFromJsonArray

In het volgende voorbeeld worden met de claimtransformatie de volgende claims geëxtraheerd: e-mail (tekenreeks), displayName (tekenreeks), membershipNum (int), actief (booleaans) 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>
  • De 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"
        }
      ]
      
  • De 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:00:00Z

GetClaimsFromJsonArrayV2

Haal een lijst met opgegeven elementen op uit JSON-elementen van een tekenreeksverzameling. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim jsonSourceClaim StringCollection De tekenreeksverzamelingsclaim met de JSON-nettoladingen. Deze claim wordt gebruikt door de claimtransformatie om de claims op te halen.
InputParameter errorOnMissingClaims booleaans Hiermee geeft u op of een fout wordt gegenereerd als een van de claims ontbreekt.
InputParameter includeEmptyClaims tekenreeks Geef op of lege claims moeten worden opgenomen.
InputParameter jsonSourceKeyName tekenreeks Naam van elementsleutel
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 jsonSourceClaim .

Voorbeeld van GetClaimsFromJsonArrayV2

In het volgende voorbeeld worden met de claimtransformatie de volgende claims geëxtraheerd: e-mail (tekenreeks), displayName (tekenreeks), membershipNum (int), actief (booleaans) 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>
  • De invoerclaims:

    • jsonSourceClaim[0] (eerste element tekenreeksverzameling):

        {
          "key": "email",
          "value": "someone@example.com"
        }
      
    • jsonSourceClaim[1] (tweede element van tekenreeksverzameling):

        {
          "key": "displayName",
          "value": "Someone"
        }
      
    • jsonSourceClaim[2] (derde element van 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"
        }
      
  • De 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:00:00Z

GetNumericClaimFromJson

Hiermee haalt u een opgegeven numeriek (lang) element op uit een JSON-gegevens. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
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>
  • De invoerclaims:

    • inputJson:

      {
        "emailAddress": "someone@example.com",
        "displayName": "Someone",
        "id": 6353399
      }
      
  • De invoerparameters

    • claimToExtract: id
  • De uitvoerclaims:

    • extractedClaim: 6353399

GetSingleItemFromJson

Haalt het eerste element op uit een JSON-gegevens. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
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 waarde van het eerste element in de JSON.

Voorbeeld van GetSingleItemFromJson

In het volgende voorbeeld extraheert de claimtransformatie het eerste element (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>
  • De invoerclaims:

    • inputJson:

      {
        "givenName": "Emily",
        "lastName": "Smith"
      }
      
  • De uitvoerclaims:

    • sleutel: givenName
    • waarde: Emilty

GetSingleValueFromJsonArray

Haalt het eerste element op uit een JSON-gegevensmatrix. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
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>
  • De invoerclaims:
    • inputJsonClaim: ["someone@example.com", "Iemand", 6353399]
  • De uitvoerclaims:
    • extractedClaim: someone@example.com

XmlStringToJsonString

XML-gegevens converteren naar JSON-indeling. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim xml tekenreeks De claim met de XML-nettolading. Deze claim wordt gebruikt door de claimtransformatie om de gegevens van XML naar JSON-indeling te converteren.
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