Partager via


Transformations de revendications JSON

Cet article fournit des exemples pour l’utilisation de transformations de revendications JSON du schéma Identity Experience Framework dans Azure Active Directory B2C (Azure AD B2C). Pour plus d’informations, consultez Transformations de revendications.

CreateJsonArray

Créez un tableau JSON à élément unique à partir d’une valeur de revendication. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim inputClaim string Revendication à ajouter à la revendication de sortie.
OutputClaim outputClaim string Chaîne JSON générée une fois que cette transformation de revendications a été appelée.

Exemple de CreateJsonArray

L’exemple suivant crée un tableau JSON unique.

<ClaimsTransformation Id="createlJsonPayload" TransformationMethod="CreateJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Revendications d’entrée :
    • inputClaim : someone@example.com
  • Revendications de sortie :
    • outputClaim : ["someone@contoso.com"]

GenerateJson

Utilisez des valeurs de revendication ou de constantes pour générer une chaîne JSON. La chaîne de chemin d’accès suivant la notation par points est utilisée pour indiquer où insérer les données dans une chaîne JSON. Une fois le fractionnement par points effectué, tous les entiers sont interprétés comme l’index d’un tableau JSON et les valeurs non entières sont interprétées comme l’index d’un objet JSON.

Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim Toute chaîne suivant la notation par points string JsonPath du JSON dans lequel la valeur de revendication sera insérée.
InputParameter Toute chaîne suivant la notation par points string JsonPath du JSON dans lequel la valeur de chaîne de constante sera insérée.
OutputClaim outputClaim string Chaîne JSON générée.

Tableaux JSON

Pour ajouter des objets JSON à un tableau JSON, utilisez le format du nom du tableau et l’index dans le tableau. Le tableau est de base zéro. Commencez par zéro à N, sans ignorer de nombre. Les éléments du tableau peuvent contenir n’importe quel objet. Par exemple, le premier élément contient deux objets, app et appId. Le deuxième élément contient un seul objet, program. Le troisième élément contient quatre objets, color, language, logo et background.

L’exemple suivant montre comment configurer des tableaux JSON. Le tableau emails utilise InputClaims avec des valeurs dynamiques. Le tableau values utilise InputParameters avec des valeurs statiques.

<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>

Résultat de cette transformation de revendications :

{
  "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"
    }
  ]
}

Pour spécifier un tableau JSON dans les revendications d’entrée et les paramètres d’entrée, vous devez démarrer le tableau dans l’élément InputClaims , zéro à N. Ensuite, dans l’élément InputParameters, poursuivez l’index à partir du dernier index.

L’exemple suivant illustre un tableau défini à la fois dans les revendications d’entrée et les paramètres d’entrée. Le premier élément du tableau valuesvalues.0 est défini dans les revendications d’entrée. Les paramètres d’entrée continuent de l’index un values.1 à deux index 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>

Exemple de GenerateJson

L’exemple suivant génère une chaîne JSON en fonction de la valeur de revendication « email » et « OTP », ainsi que de chaînes de constante.

<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>

La transformation des revendications suivante génère une revendication de chaîne JSON qui constituera le corps de la requête envoyée à SendGrid (un fournisseur de messagerie tiers). La structure de l'objet JSON est définie par les ID en notation par points des éléments InputParameters et des éléments TransformationClaimTypes de InputClaims. Les nombres dans la notation par points impliquent des tableaux. Les valeurs proviennent des valeurs InputClaims et des propriétés « Value » des éléments InputParameters.

  • Revendications d’entrée :
    • email, type de revendication de transformation personalizations.0.to.0.email: "someone@example.com"
    • copiedEmail, transformation claim type personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
    • otp, transformation claim type personalizations.0.dynamic_template_data.otp "346349"
  • Paramètre d’entrée :
    • template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
    • from.email: "service@contoso.com"
    • personalizations.0.subject "Contoso account email verification code"
  • Revendication de sortie :
    • 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"
        }
      }
      

Autre exemple de GenerateJson

L’exemple suivant génère une chaîne JSON en fonction des valeurs de revendication, ainsi que des chaînes de constante.

<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>

La transformation des revendications suivante génère une revendication de chaîne JSON qui constituera le corps de la requête envoyée à une API REST. La structure de l'objet JSON est définie par les ID en notation par points des éléments InputParameters et des éléments TransformationClaimTypes de InputClaims. Les valeurs proviennent des valeurs InputClaims et des propriétés « Value » des éléments InputParameters.

  • Revendications d’entrée :
    • email, type de revendication de transformation customerEntity.email: "john.s@contoso.com"
    • objectId, type de revendication de transformation customerEntity.userObjectId « aaaaaaaa-0000-1111-2222-bbbbbb »
    • givenName, type de revendication de transformation customerEntity.firstName "John"
    • surname, type de revendication de transformation customerEntity.lastName "Smith"
  • Paramètre d’entrée :
    • customerEntity.role.name : "Administrator"
    • customerEntity.role.id 1
  • Revendication de sortie :
    • requestBody :

      {
         "customerEntity":{
            "email":"john.s@contoso.com",
            "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

La transformation des revendications GenerateJson accepte les chaînes de caractères simples. Si une revendication d’entrée contient une chaîne JSON, cette chaîne est échappée. Dans l’exemple suivant, si vous utilisez la sortie d’e-mail de CreateJsonArray ci-dessus, c’est-à-dire ["someone@contoso.com"], comme paramètre d’entrée, l’e-mail ressemblera à ce qui est indiqué dans la requête JSON suivante :

  • Revendication de sortie :
    • requestBody :

      {
         "customerEntity":{
            "email":"[\"someone@contoso.com\"]",
            "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
            "firstName":"John",
            "lastName":"Smith",
            "role":{
               "name":"Administrator",
               "id": 1
            }
         }
      }
      

GetClaimFromJson

Obtient un élément spécifié à partir de données JSON. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim inputJson string Revendications qui sont utilisées par la transformation de revendication pour obtenir l’élément.
InputParameter claimToExtract string Nom de l’élément JSON à extraire.
OutputClaim extractedClaim string Revendication générée après l’appel de cette transformation de revendication, la valeur de l’élément spécifiée dans le paramètre d’entrée claimToExtract.

Exemple de GetClaimFromJson

Dans l’exemple suivant, la transformation de revendication a extrait l’élément emailAddress à partir des données 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>
  • Revendications d’entrée :
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Someone"}
  • Paramètre d’entrée :
    • claimToExtract : emailAddress
  • Revendications de sortie :
    • extractedClaim : someone@example.com

Autre exemple de GetClaimFromJson

La transformation des revendications GetClaimFromJson obtient un élément unique à partir d’une donnée JSON. Dans l’exemple précédent, emailAddress. Pour obtenir le displayName, créez une autre transformation des revendications. Par exemple :

<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>
  • Revendications d’entrée :
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Someone"}
  • Paramètre d’entrée :
    • claimToExtract : displayName
  • Revendications de sortie :
    • extractedClaim : quelqu’un

GetClaimsFromJsonArray

Obtenir une liste d’éléments spécifiés à partir de données Json. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim jsonSourceClaim string La revendication avec la charge utile JSON. Revendications utilisées par la transformation de revendication pour obtenir les revendications.
InputParameter errorOnMissingClaims boolean Spécifie s’il faut lever une erreur si l’une des revendications est manquante.
InputParameter includeEmptyClaims string Spécifiez s’il faut inclure les revendications vides.
InputParameter jsonSourceKeyName string Nom de clé d’élément
InputParameter jsonSourceValueName string Nom de valeur d’élément
OutputClaim Collection string, int, boolean et datetime Liste de revendications à extraire. Le nom de la revendication doit être égal à celui spécifié dans la revendication d’entrée jsonSourceClaim.

Exemple de GetClaimsFromJsonArray

Dans l’exemple suivant, la transformation de revendication extrait les revendications suivantes : email (string), displayName (string), membershipNum (int), active (boolean) et birthdate (datetime) à partir des données 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>
  • Revendications d’entrée :

    • 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"
        }
      ]
      
  • Paramètres d’entrée :

    • errorOnMissingClaims : false
    • includeEmptyClaims : false
    • jsonSourceKeyName : key
    • jsonSourceValueName : value
  • Revendications de sortie :

    • email : "someone@example.com"
    • displayName : "Someone"
    • membershipID : 6353399
    • active : true
    • birthDate : 2005-09-23T00:00:00Z

GetClaimsFromJsonArrayV2

Obtenez la liste des éléments spécifiés à partir d’éléments JSON d’une collection de chaînes. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim jsonSourceClaim stringCollection Revendication de collection de chaînes avec les charges utiles JSON. Revendications utilisées par la transformation de revendication pour obtenir les revendications.
InputParameter errorOnMissingClaims boolean Spécifie s’il faut lever une erreur si l’une des revendications est manquante.
InputParameter includeEmptyClaims string Spécifiez s’il faut inclure les revendications vides.
InputParameter jsonSourceKeyName string Nom de clé d’élément
InputParameter jsonSourceValueName string Nom de valeur d’élément
OutputClaim Collection string, int, boolean et datetime Liste de revendications à extraire. Le nom de la revendication doit être égal à celui spécifié dans la revendication d’entrée jsonSourceClaim.

Exemple de GetClaimsFromJsonArrayV2

Dans l’exemple suivant, la transformation de revendication extrait les revendications suivantes : email (string), displayName (string), membershipNum (int), active (boolean) et birthdate (datetime) à partir des données 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>
  • Revendications d’entrée :

    • jsonSourceClaim[0] (premier élément de la collection de chaînes) :

        {
          "key": "email",
          "value": "someone@example.com"
        }
      
    • jsonSourceClaim[1] (deuxième élément de la collection de chaînes) :

        {
          "key": "displayName",
          "value": "Someone"
        }
      
    • jsonSourceClaim[2] (troisième élément de la collection de chaînes) :

        {
          "key": "membershipID",
          "value": 6353399
        }
      
    • jsonSourceClaim[3] (quatrième élément de la collection de chaînes) :

        {
          "key": "active",
          "value": true
        }
      
    • jsonSourceClaim[4] (cinquième élément de la collection de chaînes) :

        {
          "key": "birthDate",
          "value": "2005-09-23T00:00:00Z"
        }
      
  • Paramètres d’entrée :

    • errorOnMissingClaims : false
    • includeEmptyClaims : false
    • jsonSourceKeyName : key
    • jsonSourceValueName : value
  • Revendications de sortie :

    • email : "someone@example.com"
    • displayName : "Someone"
    • membershipID : 6353399
    • active : true
    • birthDate : 2005-09-23T00:00:00Z

GetNumericClaimFromJson

Obtient un élément numérique (long) spécifié à partir de données JSON. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim inputJson string La revendication avec la charge utile JSON. Revendications utilisées par la transformation de revendication pour obtenir la revendication numérique.
InputParameter claimToExtract string Nom de l’élément JSON à extraire.
OutputClaim extractedClaim long Revendication générée après l’appel de cette transformation de revendication, la valeur de l’élément spécifiée dans les paramètres d’entrée claimToExtract.

Exemple de GetNumericClaimFromJson

Dans l’exemple suivant, la transformation de revendication extrait l’élément id à partir des données 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>
  • Revendications d’entrée :

    • inputJson :

      {
        "emailAddress": "someone@example.com",
        "displayName": "Someone",
        "id": 6353399
      }
      
  • Paramètres d'entrée

    • claimToExtract : id
  • Revendications de sortie :

    • extractedClaim: 6353399

GetSingleItemFromJson

Obtient le premier élément des données JSON. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim inputJson string La revendication avec la charge utile JSON. Cette revendication est utilisée par la transformation de revendication pour obtenir l’élément à partir des données JSON.
OutputClaim key string Première clé de l’élément dans le JSON.
OutputClaim value string Première valeur de l’élément dans le JSON.

Exemple de GetSingleItemFromJson

Dans l’exemple suivant, la transformation de revendication extrait le premier élément (prénom) à partir des données 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>
  • Revendications d’entrée :

    • inputJson :

      {
        "givenName": "Emily",
        "lastName": "Smith"
      }
      
  • Revendications de sortie :

    • key : givenName
    • value : Emilty

GetSingleValueFromJsonArray

Obtient le premier élément à partir d’un tableau de données JSON. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim inputJsonClaim string La revendication avec la charge utile JSON. Cette revendication est utilisée par la transformation de revendications pour obtenir la valeur du tableau JSON.
OutputClaim extractedClaim string Revendication générée après l’appel de cette transformation de revendication, le premier élément du tableau JSON.

Exemple de GetSingleValueFromJsonArray

Dans l’exemple suivant, la transformation de revendication extrait le premier élément (adresse e-mail) à partir du tableau JSON ["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>
  • Revendications d’entrée :
    • inputJsonClaim : ["someone@example.com", "Someone", 6353399]
  • Revendications de sortie :
    • extractedClaim : someone@example.com

XmlStringToJsonString

Convertit des données XML au format JSON. Découvrez la démonstration en direct de cette transformation de revendication.

Élément TransformationClaimType Type de données Notes
InputClaim Xml string Revendication avec la charge utile XML. Cette revendication est utilisée par la transformation de revendication pour convertir les données XML au format JSON.
OutputClaim json string La revendication générée après l’appel de cette transformation de revendication, les données au format JSON.
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="intpuXML" TransformationClaimType="xml" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
  </OutputClaims>
</ClaimsTransformation>

Exemple de XmlStringToJsonString

Dans l’exemple suivant, la transformation de revendication convertit les données XML suivantes au format JSON.

Revendication d’entrée :

<user>
  <name>Someone</name>
  <email>someone@example.com</email>
</user>

Revendication de sortie :

{
  "user": {
    "name":"Someone",
    "email":"someone@example.com"
  }
}

Étapes suivantes