Eventos personalizados de at.js
Información sobre at.js custom events
, le avisa cuando una oferta o una solicitud de mbox se procesa correcta o incorrectamente.
Históricamente, mbox.js (ahora obsoleto) impedía que otros códigos de JavaScript que se ejecutaban en la página supieran lo que pasaba entre bastidores. Con el adelanto de at.js, tuvimos una oportunidad única de arreglar este problema.
Nuestros clientes nos han contado que les gustaría recibir notificación sobre varias situaciones, entre otras:
- Cuando una solicitud de mbox falla porque se ha superado el tiempo de espera, porque el código de estado es erróneo, por un error de análisis de JSON, etc.
- Cuando una solicitud de mbox se efectúa correctamente.
- Cuando la representación de ofertas falla porque falta un elemento mbox envolvente, porque no se encuentra el selector, etc.
- Cuando la representación se efectúa correctamente. Los cambios del DOM se han aplicado.
Los eventos predefinidos tienen una estructura que permite extraer los datos necesarios según el tipo de evento.
Para asegurarse de que los eventos se puedan usar en distintos casos, los eventos personalizados tienen un objeto de carga útil que se asigna a la propiedad de detalle del objeto del evento (que se pasa al controlador). Además, para evitar pasar cadenas como nombres de eventos, los eventos se exponen como constantes usando el espacio de nombres de adobe.target.event
.
Estructura
Hay varios escenarios en los que le gustaría recibir notificaciones para ayudarlo a rastrear, depurar y personalizar la interacción con at.js.
Cada evento personalizado enumerado a continuación tiene dos formatos: una "constante" y un "valor de cadena".
- Constantes: antepuesto con
adobe.target.event.
, presentado todo en mayúsculas y contiene caracteres subrayados. Para suscribirse a eventos personalizados después de cargas at.js pero antes de que se haya recibido la respuesta de mbox, use la constante. - Valores de cadena: en minúsculas y contiene guiones. Para suscribirse a eventos personalizados antes de cargas at.js, use el valor de cadena.
Solicitud fallida
Constante: adobe.target.event.REQUEST_FAILED
Valor de cadena: at-request-failed
Descripción: Cuando una solicitud de mbox falla porque se ha superado el tiempo de espera, porque el código de estado es erróneo, por un error de análisis de JSON, etc.
Solicitud satisfactoria
Constante: adobe.target.event.REQUEST_SUCCEEDED
Valor de cadena: at-request-succeeded
Descripción: una solicitud de mbox ha sido satisfactoria.
Error en la representación del contenido
Constante: adobe.target.event.CONTENT_RENDERING_FAILED
Valor de cadena: at-content-rendering-failed
Descripción: Cuando la representación de ofertas falla porque falta un elemento mbox envolvente, porque no se encuentra el selector, etc.
Representación del contenido satisfactoria
Constante: adobe.target.event.CONTENT_RENDERING_SUCCEEDED
Valor de cadena: at-content-rendering-succeeded
Descripción: la prestación de oferta ha sido satisfactoria. Los cambios del DOM se han aplicado.
Librería cargada
Constante: adobe.target.event.LIBRARY_LOADED
Valor de cadena: at-library-loaded
Descripción: Este evento es ideal para realizar un seguimiento cuando at.js se ha cargado por completo. Puede usar este evento para personalizar la ejecución global de mbox. También puede usar este evento para deshabilitar el mbox global y luego escuchar este evento para lanzar el mbox global más tarde.
Inicio de solicitud
Constante: adobe.target.event.REQUEST_START
Valor de cadena: at-request-start
Descripción: Este evento se activa antes de que se ejecute una solicitud HTTP. Puede usar este evento para las mediciones de rendimiento usando API Resource Timing.
Inicio de la representación del contenido
Constante: adobe.target.event.CONTENT_RENDERING_START
Valor de cadena: at-content-rendering-start
Descripción: Este evento se activa antes de que se inicie el sondeo selector y el contenido se represente en la página. Puede usar este evento para seguir el progreso del procesamiento de contenido.
Presentación de contenido sin ofertas
Constante: adobe.target.event.CONTENT_RENDERING_NO_OFFERS
Valor de cadena: at-content-rendering-no-offers
Descripción: Este evento se lanza cuando no hay ofertas devueltas.
Redireccionar la representación de contenido
Constante: adobe.target.event.CONTENT_RENDERING_REDIRECT
Valor de cadena: at-content-rendering-redirect
Descripción: Este evento se activa cuando una oferta es redireccionada y Target se redireccionará a una dirección URL diferente.
sessionId
y deviceId
. En algunos casos, el deviceId
podría no estar porque Target no lo pudo recuperar del servidor Edge.Artefacto de toma de decisiones en el dispositivo correcto
Constante:
adobe.target.event.ARTIFACT_DOWNLOAD_SUCCEEDED
Valor de cadena: artifactDownloadSucceeded
Descripción: se llama cuando el artefacto de toma de decisiones en el dispositivo se descarga correctamente.
Error del artefacto de toma de decisiones en el dispositivo
Constante: adobe.target.event.ARTIFACT_DOWNLOAD_FAILED
Valor de cadena: artifactDownloadFailed
Descripción: se llama cuando no se pudo descargar el artefacto de toma de decisiones en el dispositivo.
Uso
document.addEventListener(adobe.target.event.REQUEST_SUCCEEDED, function(event) {
console.log('Event', event);
});
Vídeo de formación: Tokens de respuesta y eventos personalizados de at.js
Vea el siguiente vídeo para aprender a utilizar los tokens de respuesta y los eventos personalizados de at.js con el fin de compartir información de perfil de Target con sistemas de terceros.