Sugerencias de cliente del Agente de usuario
Información general
La API User-Agent Client Hints es una expansión a la API de sugerencias de cliente, que permite a los desarrolladores acceder a información sobre el explorador de un usuario de una manera más específica y dirigida, a la vez que conserva la privacidad del usuario y proporciona a los usuarios un mayor control sobre los datos que se comparten sobre su actividad de exploración. Esta API amplía el encabezado de User-Agent tradicional en las solicitudes HTTP y permite a los desarrolladores solicitar solo los fragmentos específicos de información que necesitan, en lugar de exponer todo el encabezado. Esto ayuda a reducir eventualmente la granularidad de la cadena de User-Agent y la cantidad de información potencialmente confidencial que se puede transmitir.
Las sugerencias de cliente están pensadas para ser un origen alternativo de información contenida en el encabezado User-Agent. la reducción de User-Agent (UA) es un esfuerzo para minimizar la información de identificación compartida en la cadena de User-Agent. Como resultado, se reducirán los valores devueltos de ciertas Navigator
interfaces, incluidos: navigator.userAgent
, navigator.appVersion
y navigator.platform
. Si no realizamos los ajustes necesarios y no nos adaptamos a este cambio, se perderán ciertas funcionalidades, incluida la capacidad de identificar y evitar el fraude y la actividad del bot, el reconocimiento de exploradores con fines de representación y la orientación a los compradores en función de sus dispositivos. Además, los compradores ya no podrán aprovechar las ventajas de la segmentación de dispositivos.
Cadena de UA actual (detectada como dispositivo tablet):
Mozilla/5.0 (Linux; Android 9; SM-T810) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.1234.56 Safari/537.36
Mismo usuario con cadena de UA reducida: no se usan sugerencias de cliente (detectadas como dispositivo de escritorio):
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.0.0 Safari/537.36
Sugerencias de cliente de alta entropía
Para ofrecer el máximo rendimiento y ejecutar una segmentación óptima de dispositivos, Xandr debe tener acceso a dos sugerencias de cliente de alta entropía:
- Model
- Versión de la plataforma
Para pasar estos valores, los publicadores deben establecer dos encabezados, Accept-CH y Permissions-Policy.
Accept-CH es un encabezado HTTP, establecido por un servidor para especificar qué encabezados de sugerencias de cliente debe incluir el explorador en las solicitudes posteriores. De forma predeterminada, los encabezados de sugerencia de cliente solo se enviarán a través de solicitudes del mismo origen. Indica que la llamada al anuncio de Xandr no tiene acceso a ser una solicitud entre orígenes. Para permitir sugerencias en solicitudes entre orígenes, cada sugerencia debe especificarse mediante un encabezado Permissions-Policy .
El servidor del publicador es necesario para establecer estos dos encabezados, como se muestra a continuación:
- Accept-CH:
sec-ch-ua-model,sec-ch-ua-platform-version
- Permissions-Policy:
ch-ua-model=*,ch-ua-platform-version=*
Escenarios
Si usa ast.js
o el adaptador de puja de Xandr en prebid.js
, hay dos escenarios en función de si el script del lado cliente (ast/prebid) se carga fuera o dentro de un iframe.
El script se carga fuera de un iframe
En este escenario, el servidor del publicador debe establecer los encabezados HTTP, mientras que no se requiere ningún cambio en el lado cliente. Por ejemplo, si el dominio del publicador es https://example.com
, el servidor de example.com
debe establecer los encabezados HTTP.
El script se carga dentro de un iframe entre dominios
En este escenario, el servidor entre dominios debe establecer los encabezados HTTP. Por ejemplo, si el dominio del publicador es https://example.com
y el iframe carga contenido de otro dominio, https://adscripthost.com/ad_placement_setup.html
, el servidor de https://adscripthost.com
debe establecer los encabezados.
Aquí, el allow
atributo también debe estar presente en el iframe con el valor establecido en ch-ua-platform-version;ch-ua-model
. Por ejemplo,
<iframe allow="ch-ua-platform-version;ch-ua-model" src="https://adscripthost.com/ad_placement_setup.html" style="width: 100%; height: 400px"></iframe>