Microaplicaciones

Transformación de scripts

Esta funcionalidad le permite habilitar un proceso de transformación de scripts integrado para dispositivos de punto final de carga de datos y acciones de servicio. Los scripts se pueden configurar para recibir un objeto de respuesta obtenido de la respuesta HTTP y transformarlo en otro objeto de respuesta, en función del sistema de registro (SoR) de la integración de destino. Los scripts no pueden realizar ninguna solicitud ni almacenar datos. La transformación de scripts solo está pensada para transformar la respuesta, de manera que pueda ser analizada por el analizador JSON de la integración HTTP.

  • Cada dispositivo de punto final HTTP tiene su propio script modificable.
  • Al probar una integración HTTP con el botón Probar servicio, el script se ejecuta junto con la solicitud de prueba.
  • Los scripts ejecutados con transformación de solicitudes están limitados a 10000 declaraciones.
  • La ejecución del script está limitada también a un período de tiempo de un minuto. Si la ejecución del script no termina en este plazo, se cancela.

Antes de comenzar

Para el uso de la funcionalidad de transformación de scripts se asume que está familiarizado con el SoR de la aplicación de destino. A la hora de utilizar la transformación de scripts para integraciones HTTP, debe seguir este proceso general:

  • Prepare el script que quiere importar a través de las páginas de configuración de Carga de datos o Acciones de servicio.
  • Los scripts deben prepararse en lenguaje JavaScript en el editor de texto o herramienta de desarrollo preferidos.
  • Cuando esté listo, pegue el script (o modifíquelo directamente) a través del cuadro de transformación de scripts de la interfaz de administración de microaplicaciones.
  • Una vez importado, pruebe el script.

Nota:

Cuando se utiliza transformación de scripts, Citrix registra e indexa la salida de script estándar a efectos de depuración. Cuando utilice las funciones “print”, “console.log”, etc., durante la configuración, deberá comprobar que no se registra información confidencial.

Habilitar la transformación de scripts

Para habilitar la transformación de scripts al configurar la Carga de datos o las Acciones de servicio, siga estos pasos:

  1. Seleccione el botón Transformación de scripts:

    Conmutador para transformación de scripts

  2. Introduzca el script preparado:

    Entrada de script

  3. Seleccione Probar con parámetros, seguido de Probar servicio, para ver la respuesta original, el resultado del script, la respuesta transformada y cualquier error, si procede.

Nota:

Si cambia el script de transformación, deberá volver a generar también la tabla

Cuando el script funcione correctamente con la Carga de datos o las Acciones de servicio, seleccione Agregar.

Ejemplos de scripts

({response}) => {
_ = library.load("lodash")
let json = JSON.parse(response)
console.log(`loaded user count: ${json.length}`)
let transformed = json.filter(user => {
    if (user.active === true) {
        return true
    }
    console.log(`skipping inactive: ${user.displayName}`)
    return false
}).map(user => ({
    name: user.displayName,
    avatarUrl: user.avatarUrls["32x32"],
    now: _.now(),
}))
return JSON.stringify(transformed) }

Nota:

Puede devolver la cadena como en el ejemplo anterior o, alternativamente, como el objeto js (matriz) que devolvería la variable transformada.

Ejemplo: Cambio del nombre de la matriz JSON before.json after.json:

({
response
}) => {
_ = library.load("lodash")
 
function rename(obj, key, newKey) {
    if (_.includes(_.keys(obj), key)) {
        obj[newKey] = _.clone(obj[key], true)
        delete obj[key]
    }
    return obj
}
 
let json = JSON.parse(response)
let transformed = rename(json, 'tickets', 'new_tickets')
return JSON.stringify(transformed) }
Transformación de scripts