Transformaciones de notificaciones de JSON

En este artículo se proporcionan ejemplos de uso de las transformaciones de notificaciones JSON del esquema Identity Experience Framework en Azure Active Directory B2C (Azure AD B2C). Para más información, consulte Transformaciones de notificaciones.

CreateJsonArray

Cree una matriz de un solo elemento JSON a partir de un valor de notificación. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputClaim string Notificación que se agregará a la notificación de salida.
OutputClaim outputClaim string La cadena JSON que se genera después de que se haya invocado esta transformación de notificaciones.

Ejemplo de CreateJsonArray

En el ejemplo siguiente se crea una matriz única JSON.

<ClaimsTransformation Id="createlJsonPayload" TransformationMethod="CreateJsonArray">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Notificaciones de entrada:
    • inputClaim: someone@example.com
  • Notificaciones de salida:
    • outputClaim: ["someone@contoso.com"]

GenerateJson

Use valores de notificaciones o constantes para generar una cadena JSON. La cadena de ruta de acceso que sigue a la notación de puntos se usa para indicar dónde insertar los datos en una cadena JSON. Después de dividirlos por puntos, los números enteros se interpretan como el índice de una matriz JSON y los no enteros se interpretan como el índice de un objeto JSON.

Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim Cualquier cadena que siga a la notación de puntos string JsonPath del JSON donde se insertará el valor de la notificación.
InputParameter Cualquier cadena que siga a la notación de puntos string JsonPath del JSON donde se insertará el valor de cadena constante.
OutputClaim outputClaim string Cadena JSON generada.

Matrices JSON

Para agregar objetos JSON a una matriz JSON, use el formato de nombre de matriz y el índice de la matriz. La matriz es de base cero. Comience con cero hasta N, sin omitir ningún número. Los elementos de la matriz pueden contener cualquier objeto. Por ejemplo, el primer elemento contiene dos objetos, app y appId. El segundo elemento contiene un único objeto, program. El tercer elemento contiene cuatro objetos, color, language, logo y background.

En el ejemplo siguiente se muestra cómo configurar matrices JSON. La matriz background usa InputClaims con valores dinámicos. La matriz values usa InputParameters con valores estáticos.

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

El resultado de esta transformación de notificaciones es el siguiente:

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

Para especificar una matriz JSON tanto en las notificaciones como en los parámetros de entrada, debe iniciar la matriz en el elemento InputClaims, de cero a N. Después, en el elemento InputParameters, continúe el índice a partir del último índice.

En el ejemplo siguiente se muestra una matriz que se define tanto en las notificaciones de entrada como en los parámetros de entrada. El primer elemento de la matriz valuesvalues.0 se define en las notificaciones de entrada. Los parámetros de entrada continúan desde el índice uno values.1 al dos 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>

Ejemplo de GenerateJson

En el ejemplo siguiente se genera una cadena JSON basada en el valor de notificación de "email" y "OTP", así como cadenas de constantes.

<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 siguiente transformación de notificaciones genera una notificación de cadena JSON que será el cuerpo de la solicitud enviada a SendGrid (un proveedor de correo electrónico de terceros). La estructura del objeto JSON se define mediante los identificadores de la notación de puntos de InputParameters y TransformationClaimTypes del objeto InputClaims. Los números de la notación de puntos implican matrices. Los valores provienen de los valores de InputClaims y de las propiedades "value" de InputParameters.

  • Notificaciones de entrada:
    • email, tipo de notificación de transformación personalizations.0.to.0.email: "someone@example.com"
    • copiedEmail, tipo de notificación de transformación personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
    • otp, tipo de notificación de transformación personalizations.0.dynamic_template_data.otp "346349"
  • Parámetro de entrada:
    • template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
    • from.email: "service@contoso.com"
    • personalizations.0.subject "Código de comprobación del correo electrónico de la cuenta de Contoso"
  • Notificación de salida:
    • 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"
        }
      }
      

Otro ejemplo de GenerateJson

En el ejemplo siguiente se genera una cadena JSON basada en los valores de notificación, así como cadenas de constantes.

<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 siguiente transformación de notificaciones genera una notificación de cadena JSON que será el cuerpo de la solicitud enviada a una API de REST. La estructura del objeto JSON se define mediante los identificadores de la notación de puntos de InputParameters y TransformationClaimTypes del objeto InputClaims. Los valores provienen de los valores de InputClaims y de las propiedades "value" de InputParameters.

  • Notificaciones de entrada:
    • email, tipo de notificación de transformación customerEntity.email: "john.s@contoso.com"
    • objectId, tipo de notificación de transformación customerEntity.userObjectId "aaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
    • givenName, tipo de notificación de transformación customerEntity.firstName "John"
    • surname, tipo de notificación de transformación customerEntity.lastName "Smith"
  • Parámetro de entrada:
    • customerEntity.role.name: "Administrator"
    • customerEntity.role.id 1
  • Notificación de salida:
    • requestBody:

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

La transformación de notificaciones GenerateJson acepta cadenas sin formato. Si una notificación de entrada contiene una cadena JSON, se aplicará una secuencia de escape a la cadena. En el ejemplo siguiente, si usa la salida de correo electrónico CreateJsonArray indicada más arriba, es decir, ["someone@contoso.com"], como parámetro de entrada, el correo electrónico tendrá un aspecto similar al que se muestra en la siguiente notificación JSON:

  • Notificación de salida:
    • requestBody:

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

GetClaimFromJson

Obtener un elemento especificado de datos JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputJson string Las notificaciones que usa la transformación de notificaciones para obtener el elemento.
InputParameter claimToExtract string El nombre del elemento JSON que se va a extraer.
OutputClaim extractedClaim string La notificación que se genera después de que se haya invocado esta transformación de notificaciones, con el valor especificado en el parámetro de entrada claimToExtract.

Ejemplo de GetClaimFromJson

En el ejemplo siguiente, se muestra que la transformación de notificaciones extrajo el elemento emailAddress a partir de los datos 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>
  • Notificaciones de entrada:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Someone"}
  • Parámetro de entrada:
    • claimToExtract: emailAddress
  • Notificaciones de salida:
    • extractedClaim: someone@example.com

Otro ejemplo de GetClaimFromJson

La transformación de notificaciones GetClaimFromJson obtiene un único elemento a partir de los datos JSON. En el ejemplo anterior, emailAddress. Para obtener displayName, cree otra transformación de notificaciones. Por ejemplo:

<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>
  • Notificaciones de entrada:
    • inputJson: {"emailAddress": "someone@example.com", "displayName": "Someone"}
  • Parámetro de entrada:
    • claimToExtract: displayName
  • Notificaciones de salida:
    • extractedClaim: Someone

GetClaimsFromJsonArray

Obtener una lista de los elementos especificados a partir de datos JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim jsonSourceClaim string Notificación con la carga JSON. Esta notificación la usa la transformación de notificaciones para obtener la notificación.
InputParameter errorOnMissingClaims boolean Especifica si se emite un error cuando falta una de las notificaciones.
InputParameter includeEmptyClaims string Especifica si se incluyen notificaciones vacías.
InputParameter jsonSourceKeyName string Nombre de la clave del elemento.
InputParameter jsonSourceValueName string Nombre del valor del elemento.
OutputClaim Colección string, int, boolean y datetime Lista de las notificaciones que se van a extraer. El nombre de la notificación debe ser igual al especificado en la notificación de entrada jsonSourceClaim.

Ejemplo de GetClaimsFromJsonArray

En el ejemplo siguiente, la transformación de notificaciones extrae estas notificaciones: email (string), displayName (string), membershipNum (int), active (boolean) y birthDate (datetime) a partir de los datos 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>
  • Notificaciones de entrada:

    • 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"
        }
      ]
      
  • Parámetros de entrada:

    • errorOnMissingClaims: false
    • includeEmptyClaims: false
    • jsonSourceKeyName: key
    • jsonSourceValueName: value
  • Notificaciones de salida:

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

GetClaimsFromJsonArrayV2

Obtenga una lista de elementos especificados de los elementos JSON de una colección de cadenas. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim jsonSourceClaim stringCollection La notificación de colección de cadenas con las cargas JSON. Esta notificación la usa la transformación de notificaciones para obtener la notificación.
InputParameter errorOnMissingClaims boolean Especifica si se emite un error cuando falta una de las notificaciones.
InputParameter includeEmptyClaims string Especifica si se incluyen notificaciones vacías.
InputParameter jsonSourceKeyName string Nombre de la clave del elemento.
InputParameter jsonSourceValueName string Nombre del valor del elemento.
OutputClaim Colección string, int, boolean y datetime Lista de las notificaciones que se van a extraer. El nombre de la notificación debe ser igual al especificado en la notificación de entrada jsonSourceClaim.

Example of GetClaimsFromJsonArrayV2

En el ejemplo siguiente, la transformación de notificaciones extrae estas notificaciones: email (string), displayName (string), membershipNum (int), active (boolean) y birthDate (datetime) a partir de los datos 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>
  • Notificaciones de entrada:

    • jsonSourceClaim[0] (primer elemento de la colección de cadenas):

        {
          "key": "email",
          "value": "someone@example.com"
        }
      
    • jsonSourceClaim[1] (segundo elemento de la colección de cadenas):

        {
          "key": "displayName",
          "value": "Someone"
        }
      
    • jsonSourceClaim[2] (tercer elemento de la colección de cadenas):

        {
          "key": "membershipID",
          "value": 6353399
        }
      
    • jsonSourceClaim[3] (cuarto elemento de la colección de cadenas):

        {
          "key": "active",
          "value": true
        }
      
    • jsonSourceClaim[4] (quinto elemento de la colección de cadenas):

        {
          "key": "birthDate",
          "value": "2005-09-23T00:00:00Z"
        }
      
  • Parámetros de entrada:

    • errorOnMissingClaims: false
    • includeEmptyClaims: false
    • jsonSourceKeyName: key
    • jsonSourceValueName: value
  • Notificaciones de salida:

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

GetNumericClaimFromJson

Obtiene un elemento numérico especificado (long) a partir de datos JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputJson string Notificación con la carga JSON. La transformación de notificaciones usa esta notificación para obtener la notificación numérica.
InputParameter claimToExtract string El nombre del elemento JSON que se va a extraer.
OutputClaim extractedClaim long ClaimType que se genera después de que se haya invocado esta transformación de notificaciones, con el valor especificado en el parámetro de entrada claimToExtract.

Ejemplo de GetNumericClaimFromJson

En el ejemplo siguiente, la transformación de notificaciones extrae el elemento id a partir de datos 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>
  • Notificaciones de entrada:

    • inputJson:

      {
        "emailAddress": "someone@example.com",
        "displayName": "Someone",
        "id": 6353399
      }
      
  • Parámetros de entrada

    • claimToExtract: id
  • Notificaciones de salida:

    • extractedClaim: 6353399

GetSingleItemFromJson

Obtiene el primer elemento de los datos JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputJson string Notificación con la carga JSON. Esta notificación la usa la transformación de notificaciones para obtener el elemento de los datos JSON.
OutputClaim key string La clave del primer elemento de los datos JSON.
OutputClaim value string El valor del primer elemento de los datos JSON.

Ejemplo de GetSingleItemFromJson

En el ejemplo siguiente, la transformación de notificaciones extrae el primer elemento (givenName) de los datos 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>
  • Notificaciones de entrada:

    • inputJson:

      {
        "givenName": "Emily",
        "lastName": "Smith"
      }
      
  • Notificaciones de salida:

    • clave: givenName
    • value: Emilty

GetSingleValueFromJsonArray

Obtiene el primer elemento de una matriz de datos JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim inputJsonClaim string Notificación con la carga JSON. Esta notificación la usa la transformación de notificaciones usa esta notificación para obtener el valor de la matriz JSON.
OutputClaim extractedClaim string La notificación que se genera después de que se haya invocado esta ClaimsTransformation, con el primer elemento de la matriz JSON.

Ejemplo de GetSingleValueFromJsonArray

En el ejemplo siguiente, la transformación de notificaciones extrae el primer elemento (dirección de correo electrónico) de la matriz 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>
  • Notificaciones de entrada:
    • inputJsonClaim: ["someone@example.com", "Someone", 6353399]
  • Notificaciones de salida:
    • extractedClaim: someone@example.com

XmlStringToJsonString

Convierte los datos XML en formato JSON. Consulte la demo en vivo de esta transformación de notificaciones.

Elemento TransformationClaimType Tipo de datos Notas
InputClaim Xml string La notificación con la carga XML. Esta notificación la usa la transformación de notificaciones para convertir los datos XML en formato JSON.
OutputClaim json string La notificación que se genera después de que se haya invocado esta transformación de notificaciones, con los datos en formato JSON.
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="intpuXML" TransformationClaimType="xml" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
  </OutputClaims>
</ClaimsTransformation>

Ejemplo de XmlStringToJsonString

En el ejemplo siguiente, la transformación de notificaciones convierte los siguientes datos XML en formato JSON.

Notificación de entrada:

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

Notificación de salida:

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

Pasos siguientes