documentUnloading (Web SDK)

La propiedad documentUnloading le permite utilizar el método sendBeacon del explorador para enviar datos a Adobe. Este método forma parte de las API web del explorador, no del propio lenguaje JavaScript. Si una solicitud típica tarda demasiado, el explorador puede cancelarla. Puede indicar a Web SDK que use sendBeacon para que la solicitud se ejecute en segundo plano después de salir de la página. Habilite esta propiedad para evitar que el explorador cancele las solicitudes de datos al descargar.

Web SDK utiliza sendBeacon solo después de establecer la identidad de un visitante. Antes de establecer una identidad (por ejemplo, en el primer evento de un nuevo visitante), Web SDK envía el evento a Edge Network mediante fetch para que pueda recibir la identidad en la respuesta. A partir de la versión 2.36.1, estas fetch solicitudes utilizan la opción keepalive para que el explorador termine de enviar la solicitud incluso si el visitante sale de la página.

Varios exploradores imponen un límite de 64 KB a la cantidad de datos que se pueden enviar con sendBeacon al mismo tiempo. El mismo límite se aplica a fetch solicitudes que utilizan keepalive. Si el explorador rechaza el evento porque la carga útil es demasiado grande, Web SDK vuelve a utilizar su método de transporte normal. Incluso si un explorador determinado permite cargas útiles más grandes, los servidores de recopilación de datos de Adobe truncan las cargas útiles a 64 KB.

Establezca el booleano documentUnloading al ejecutar el comando sendEvent. Su valor predeterminado es false. Establezca esta propiedad en true si desea utilizar el método sendBeacon para enviar datos a Adobe.

IMPORTANT
La propiedad documentUnloading no es compatible con la propiedad renderDecisions. Evite establecer ambas propiedades en true simultáneamente.
alloy("sendEvent", {
  "xdm": adobeDataLayer.getState(reference),
  "documentUnloading": true
});

Validar eventos enviados con documentUnloading validate

Si la página sale antes de que finalice una solicitud de sendBeacon, las herramientas para desarrolladores de Chrome pueden mostrar la solicitud (tipo ping) como (cancelada) incluso cuando el explorador continúa enviándola. Las solicitudes enviadas mediante fetch con keepalive se pueden mostrar como canceladas del mismo modo. Esta etiqueta por sí sola no establece si se perdieron datos.

Los registros de depuración de Web SDK tampoco pueden confirmar la entrega. Los exploradores no devuelven una respuesta para sendBeacon solicitudes, por lo que el registro solo muestra que Web SDK envió la solicitud utilizando sendBeacon.

Abra una herramienta de inspección antes de reproducir la navegación. Busque una respuesta del servidor capturada o, en una sesión conectada de Edge Trace/Assurance, la solicitud entrante en Edge Network. Vea Solicitudes anuladas para el flujo de trabajo de inspección compartido y sus límites de evidencia. La confirmación de la recepción de Edge no establece por sí sola un procesamiento descendente.

Cuando se pueden perder eventos data-loss

La propiedad documentUnloading no puede ayudar con eventos que Web SDK aún no ha enviado cuando se descarga la página. Por ejemplo, Web SDK retiene eventos mientras el consentimiento es pending (consulte defaultConsent) o mientras espera a que finalice una solicitud de identidad en curso. En el segundo caso, el registro de depuración muestra Delaying request while retrieving ECID from server.

Descarga de documentos con la extensión de etiquetas Web SDK

La casilla de verificación Documento descargará está disponible al configurar una acción Enviar evento al usar la extensión de etiquetas Web SDK.

recommendation-more-help
experience-platform-help-collection