{"id":82967,"date":"2022-10-10T00:31:19","date_gmt":"2022-10-09T22:31:19","guid":{"rendered":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/"},"modified":"2021-07-06T10:11:23","modified_gmt":"2021-07-06T08:11:23","slug":"mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario","status":"publish","type":"post","link":"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/","title":{"rendered":"Am\u00e9lioration de la confidentialit\u00e9 des utilisateurs et de l&#039;exp\u00e9rience des d\u00e9veloppeurs gr\u00e2ce aux suggestions de clients d&#039;agent utilisateur"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_86 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Contenidos<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Antecedentes\" >Antecedentes<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#El-estado-de-la-cadena-de-usuario-agente\" >El estado de la cadena de usuario-agente<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Presentacion-de-las-nuevas-sugerencias-de-cliente-de-agente-de-usuario\" >Presentaci\u00f3n de las nuevas sugerencias de cliente de agente de usuario<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Sugerencias-de-cliente-de-agente-de-usuario-en-Chromium-84\" >Sugerencias de cliente de agente de usuario en Chromium 84<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Respuestas-de-agente-de-usuario-y-encabezados-de-solicitud\" >Respuestas de agente de usuario y encabezados de solicitud<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Intercambio-de-ejemplo\" >Intercambio de ejemplo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#API-de-JavaScript\" >API de JavaScript<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Manifestacion\" >Manifestaci\u00f3n<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Sugerencia-de-por-vida-y-restablecimiento\" >Sugerencia de por vida y restablecimiento<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#Ambito-de-sugerencia-y-solicitudes-de-origen-cruzado\" >\u00c1mbito de sugerencia y solicitudes de origen cruzado<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#%C2%BFDonde-usar-las-sugerencias-de-cliente-de-agente-de-usuario\" >\u00bfD\u00f3nde usar las sugerencias de cliente de agente de usuario?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#%C2%BFQue-sucede-con-la-cadena-de-usuario-agente\" >\u00bfQu\u00e9 sucede con la cadena de usuario-agente?<\/a><\/li><\/ul><\/nav><\/div>\n<p><\/p>\n<div>\n<header class=\"w-article-header\">\n<p class=\"w-article-header__subhead w-mb--non\">\n<p>          User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador de un usuario de una manera ergon\u00f3mica y que preserva la privacidad.\n        <\/p>\n<p>\n          <time>25 de junio de 2020<\/time><br \/>\n            Actualizado <time>20 de agosto de 2020<\/time>\n        <\/p>\n<div class=\"w-layout-container--narrow w-post-signpost\">\n  <span class=\"w-post-signpost__title\">Aparece en:<\/span><br \/>\n  Seguro y a salvo\n<\/div>\n<\/header>\n<p>\n  <iframe loading=\"lazy\" title=\"Just the data you need\" width=\"1080\" height=\"608\" src=\"https:\/\/www.youtube.com\/embed\/f0YY0o2OAKA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/p>\n<p>Las sugerencias de cliente posibilitan a los desarrolladores solicitar activamente informaci\u00f3n sobre el dispositivo o las condiciones del usuario, en lugar de tener que analizarla fuera de la cadena de usuario-agente (UA).  Proporcionar esta ruta alternativa es el primer paso para disminuir eventualmente la granularidad de las cadenas de usuario-agente.<\/p>\n<p>Aprenda a actualizar su funcionalidad existente que se basa en analizar la cadena de usuario-agente para hacer uso de las sugerencias de cliente de usuario-agente.<\/p>\n<h2 id=\"background\"><span class=\"ez-toc-section\" id=\"Antecedentes\"><\/span>Antecedentes <span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Cuando los navegadores web realizan solicitudes, incluyen informaci\u00f3n sobre el navegador y su entorno para que los servidores puedan habilitar el an\u00e1lisis y personalizar la respuesta.  Esto se defini\u00f3 en 1996 (RFC 1945 para HTTP \/ 1.0), donde puede hallar el <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/tools.ietf.org\/html\/rfc1945#section-10.15\">definici\u00f3n original de la cadena Usuario-Agente<\/a>, que incluye un ejemplo:<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">User-Agent: CERN-LineMode\/2.15 libwww\/2.17b3<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>Este encabezado estaba destinado a especificar, en orden de relevancia, el producto (a modo de ejemplo, navegador o biblioteca) y un comentario (a modo de ejemplo, versi\u00f3n).<\/p>\n<h3 id=\"the-state-of-the-user-agent-string\"><span class=\"ez-toc-section\" id=\"El-estado-de-la-cadena-de-usuario-agente\"><\/span>El estado de la cadena de usuario-agente <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sobre la intervenci\u00f3n <em>d\u00e9cadas<\/em>, esta cadena ha acumulado una gama de detalles adicionales sobre el cliente que realiza la solicitud (as\u00ed como cruft, debido a la compatibilidad con versiones anteriores).  Podemos ver eso cuando miramos la cadena actual de User-Agent de Chrome:<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Mozilla\/5.0 (Linux; Android 10; Pixel 3) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/84.0.4076.0 Mobile Safari\/537.36<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>La cadena anterior contiene informaci\u00f3n sobre el sistema operativo y la versi\u00f3n del usuario, el modelo del dispositivo, la marca del navegador y la versi\u00f3n completa, pistas suficientes para inferir que es un navegador tel\u00e9fono celular y sin mencionar una serie de referencias a otros navegadores por razones hist\u00f3ricas.<\/p>\n<p>La combinaci\u00f3n de estos par\u00e1metros con la gran diversidad de valores posibles significa que la cadena Usuario-Agente podr\u00eda contener suficiente informaci\u00f3n para permitir que los usuarios individuales sean identificados de forma \u00fanica.  Si prueba su propio navegador en<br \/>\n<a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/amiunique.org\/\">AmIUnique<\/a>, puedes ver cu\u00e1n cerca <strong>tu<\/strong><br \/>\nLa cadena de usuario-agente identifica <strong>t\u00fa<\/strong>.  Cuanto menor sea el \u00ab\u00edndice de similitud\u00bb resultante, m\u00e1s exclusivas ser\u00e1n sus solicitudes, m\u00e1s f\u00e1cil ser\u00e1 para los servidores rastrearlo de forma encubierta.<\/p>\n<p>La cadena de usuario-agente habilita muchos <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/github.com\/WICG\/ua-client-hints\/blob\/master\/README.md#use-cases\">casos de uso<\/a>y tiene un prop\u00f3sito importante para los desarrolladores y propietarios de sitios.  A pesar de todo, adem\u00e1s es fundamental que la privacidad de los usuarios est\u00e9 protegida contra m\u00e9todos de seguimiento encubiertos, y el env\u00edo de informaci\u00f3n de UA de forma predeterminada va en contra de ese objetivo.<\/p>\n<p>Adem\u00e1s existe la necesidad de mejorar la compatibilidad web cuando se trata de la cadena Usuario-Agente.  No est\u00e1 estructurado, por lo que analizarlo genera una complejidad innecesaria, que usualmente es la causa de errores y problemas de compatibilidad del sitio que perjudican a los usuarios.  Estos problemas adem\u00e1s perjudican de forma desproporcionada a los usuarios de navegadores menos habituales, puesto que es factible que los sitios no hayan podido probar su configuraci\u00f3n.<\/p>\n<h2 id=\"introducing-the-new-user-agent-client-hints\"><span class=\"ez-toc-section\" id=\"Presentacion-de-las-nuevas-sugerencias-de-cliente-de-agente-de-usuario\"><\/span>Presentaci\u00f3n de las nuevas sugerencias de cliente de agente de usuario <span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/github.com\/WICG\/ua-client-hints#explainer-reducing-user-agent-granularity\">Sugerencias de cliente de agente de usuario<\/a><br \/>\npermitir el acceso a la misma informaci\u00f3n pero de una manera m\u00e1s preservada de la privacidad, lo que a su vez posibilita que los navegadores reduzcan eventualmente el valor predeterminado de la cadena Usuario-Agente de transmitir todo. <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/tools.ietf.org\/html\/draft-ietf-httpbis-client-hints\">Sugerencias para el cliente<\/a> Aplicar un modelo en el que el servidor debe solicitar al navegador un recopilatorio de datos sobre el cliente (las sugerencias) y el navegador aplica sus propias pol\u00edticas o configuraci\u00f3n de usuario para establecer qu\u00e9 datos se devuelven.  Esto significa que en lugar de exponer <strong>todas<\/strong><br \/>\nLa informaci\u00f3n de Usuario-Agente de forma predeterminada, el acceso ahora se gestiona de forma expl\u00edcita y auditable.  Los desarrolladores adem\u00e1s se benefician de una API m\u00e1s simple: \u00a1no m\u00e1s expresiones regulares!<\/p>\n<p>El conjunto actual de Sugerencias para el cliente describe principalmente las capacidades de conexi\u00f3n y visualizaci\u00f3n del navegador.  Puede explorar los detalles en <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/developers.google.com\/web\/updates\/2015\/09\/automating-resource-selection-with-client-hints\">Automatizaci\u00f3n de la selecci\u00f3n de recursos con sugerencias para el cliente<\/a>, pero aqu\u00ed hay un repaso r\u00e1pido sobre el procedimiento.<\/p>\n<p>El servidor solicita sugerencias de cliente espec\u00edficas a trav\u00e9s de un encabezado:<\/p>\n<p>\u2b07\ufe0f <em>Respuesta del servidor<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Accept-CH: Viewport-Width, Width<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>O una metaetiqueta:<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-html\"><code class=\"language-html\"><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>meta<\/span> <span class=\"token attr-name\">http-equiv<\/span><span class=\"token attr-value\"><span class=\"token punctuation attr-equals\">=<\/span><span class=\"token punctuation\">\"<\/span>Accept-CH<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">content<\/span><span class=\"token attr-value\"><span class=\"token punctuation attr-equals\">=<\/span><span class=\"token punctuation\">\"<\/span>Viewport-Width, Width<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span><\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>Despu\u00e9s, el navegador puede elegir por enviar los siguientes encabezados en solicitudes posteriores:<\/p>\n<p>\u2b06\ufe0f <em>Solicitud posterior<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Viewport-Width: 460<br>Width: 230<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>El servidor puede elegir por variar sus respuestas, a modo de ejemplo, ofreciendo im\u00e1genes con una resoluci\u00f3n adecuada.<\/p>\n<div class=\"w-aside w-aside--note\">\n<p>Hay discusiones en curso sobre la habilitaci\u00f3n de las sugerencias del cliente en una solicitud inicial, pero debe considerar un dise\u00f1o receptivo o una mejora progresiva antes de seguir esta ruta.<\/p>\n<\/div>\n<p>Las sugerencias de cliente de agente de usuario ampl\u00edan la gama de propiedades que se pueden especificar a trav\u00e9s de el <code>Accept-CH<\/code> encabezado de respuesta del servidor.  Cuando el navegador devuelve informaci\u00f3n, utilizar\u00e1 el <code>Sec-CH-UA<\/code> prefijo.  Para todos los detalles, comience con <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/github.com\/WICG\/ua-client-hints\/blob\/master\/README.md\">el explicador<\/a> y posteriormente sumergirse en el <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/wicg.github.io\/ua-client-hints\/\">iniciativa completa<\/a>.<\/p>\n<p>El nuevo conjunto de sugerencias se encuentra disponible en Chromium 84, por lo tanto exploremos c\u00f3mo funciona todo.<\/p>\n<h2 id=\"user-agent-client-hints-in-chromium-84\"><span class=\"ez-toc-section\" id=\"Sugerencias-de-cliente-de-agente-de-usuario-en-Chromium-84\"><\/span>Sugerencias de cliente de agente de usuario en Chromium 84 <span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Las sugerencias de cliente de agente de usuario solo se habilitar\u00e1n gradualmente en Chrome estable como<br \/>\n<a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/bugs.chromium.org\/p\/chromium\/issues\/detail?id=1091285\">preocupaciones de compatibilidad<\/a> se resuelven.  Para forzar la funcionalidad de prueba, aseg\u00farese de:<\/p>\n<ul>\n<li>est\u00e1n en Chrome 84 <strong>beta<\/strong> o id\u00e9ntico<\/li>\n<li>habilitar el <code>chrome:\/\/flags\/#enable-experimental-web-platform-features<\/code> bandera<\/li>\n<\/ul>\n<p>De manera predeterminada, el navegador devuelve la marca del navegador, la versi\u00f3n significativa \/ principal y un indicador si el cliente es un dispositivo tel\u00e9fono celular:<\/p>\n<p>\u2b06\ufe0f <em>Todas las solicitudes<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Sec-CH-UA: \"Chromium\";v=\"84\", \"Google Chrome\";v=\"84\"<br>Sec-CH-UA-Mobile: ?0<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<div class=\"w-aside w-aside--caution\">\n<p><strong>Precauci\u00f3n:<\/strong><br \/>\nEstas propiedades son m\u00e1s complejas que un solo valor, por lo que Encabezados estructurados<br \/>\nse usan para representar listas y valores booleanos.<\/p>\n<\/div>\n<h3 id=\"user-agent-response-and-request-headers\"><span class=\"ez-toc-section\" id=\"Respuestas-de-agente-de-usuario-y-encabezados-de-solicitud\"><\/span>Respuestas de agente de usuario y encabezados de solicitud <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"w-table-wrapper\">\n<table>\n<thead>\n<tr>\n<th>\u2b07\ufe0f Respuesta<br \/><code>Accept-CH<\/code><\/th>\n<th>\u2b06\ufe0f Solicitar<br \/>encabezamiento<\/th>\n<th>\u2b06\ufe0f Solicitar<br \/>Valor de ejemplo<\/th>\n<th>Descripci\u00f3n<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>UA<\/code><\/td>\n<td><code>Sec-CH-UA<\/code><\/td>\n<td><code>\"Chromium\";v=\"84\",<\/code><br \/><code>\"Google Chrome\";v=\"84\"<\/code><\/td>\n<td>Lista de marcas de navegadores y su versi\u00f3n significativa.<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Mobile<\/code><\/td>\n<td><code>Sec-CH-UA-Mobile<\/code><\/td>\n<td><code>?1<\/code><\/td>\n<td>Booleano que indica si el navegador est\u00e1 en un dispositivo tel\u00e9fono celular (<code>?1<\/code> de verdad) o no (<code>?0<\/code> por falso).<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Full-Version<\/code><\/td>\n<td><code>Sec-CH-UA-Full-Version<\/code><\/td>\n<td><code>\"84.0.4143.2\"<\/code><\/td>\n<td>La versi\u00f3n completa para el navegador.<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Platform<\/code><\/td>\n<td><code>Sec-CH-UA-Platform<\/code><\/td>\n<td><code>\"Android\"<\/code><\/td>\n<td>La plataforma del dispositivo, de forma general el sistema operativo (SO).<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Platform-Version<\/code><\/td>\n<td><code>Sec-CH-UA-Platform-Version<\/code><\/td>\n<td><code>\"10\"<\/code><\/td>\n<td>La versi\u00f3n para la plataforma o el sistema operativo.<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Arch<\/code><\/td>\n<td><code>Sec-CH-UA-Arch<\/code><\/td>\n<td><code>\"ARM64\"<\/code><\/td>\n<td>La arquitectura subyacente del dispositivo.  Aunque esto puede no ser relevante para mostrar la p\u00e1gina, es factible que el sitio desee ofrecer una descarga con el formato correcto de forma predeterminada.<\/td>\n<\/tr>\n<tr>\n<td><code>UA-Model<\/code><\/td>\n<td><code>Sec-CH-UA-Model<\/code><\/td>\n<td><code>\"Pixel 3\"<\/code><\/td>\n<td>El modelo de dispositivo.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"w-aside w-aside--gotchas\">\n<strong>Gotchas!<\/strong> <\/p>\n<p>Las consideraciones de privacidad y compatibilidad significan que el valor puede estar en blanco, no devuelto o poblado con un valor variable.  Esto se conoce como<br \/>\n<a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/wicg.github.io\/ua-client-hints\/#grease\">GRASA<\/a>.<\/p>\n<\/div>\n<h3 id=\"example-exchange\"><span class=\"ez-toc-section\" id=\"Intercambio-de-ejemplo\"><\/span>Intercambio de ejemplo <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Un intercambio de ejemplo se ver\u00eda as\u00ed:<\/p>\n<p>\u2b06\ufe0f <em>Solicitud inicial del navegador<\/em><br \/>El navegador solicita el <code>\/downloads<\/code><br \/>\np\u00e1gina del sitio y env\u00eda su User-Agent b\u00e1sico predeterminado.<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">GET \/downloads HTTP\/1.1<br>Host: example.site<p>Sec-CH-UA: \"Chromium\";v=\"84\", \"Google Chrome\";v=\"84\"<br>Sec-CH-UA-Mobile: ?0<\/p><\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>\u2b07\ufe0f <em>Respuesta del servidor<\/em><br \/>El servidor devuelve la p\u00e1gina y, al mismo tiempo, solicita la versi\u00f3n completa del navegador y la plataforma.<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">HTTP\/1.1 200 OK<br>Accept-CH: UA-Full-Version, UA-Platform<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>\u2b06\ufe0f <em>Solicitudes posteriores<\/em><br \/>El navegador otorga al servidor acceso a la informaci\u00f3n adicional y env\u00eda las sugerencias adicionales en todas las respuestas posteriores.<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">GET \/downloads\/app1 HTTP\/1.1<br>Host: example.site<p>Sec-CH-UA: \"Chromium\";v=\"84\", \"Google Chrome\";v=\"84\"<br>Sec-CH-UA-Mobile: ?0<br>Sec-CH-UA-Full-Version: \"84.0.4143.2\"<br>Sec-CH-UA-Platform: \"Android\"<\/p><\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<h3 id=\"javascript-api\"><span class=\"ez-toc-section\" id=\"API-de-JavaScript\"><\/span>API de JavaScript <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Al mismo tiempo de los encabezados, adem\u00e1s se puede ingresar al User-Agent en JavaScript a trav\u00e9s de<br \/>\n<code>navigator.userAgentData<\/code>.  El valor por defecto <code>Sec-CH-UA<\/code> y <code>Sec-CH-UA-Mobile<\/code> se puede ingresar a la informaci\u00f3n del encabezado a trav\u00e9s del <code>brands<\/code> y <code>mobile<\/code> propiedades, respectivamente:<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-js\"><code class=\"language-js\"><br>console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span>navigator<span class=\"token punctuation\">.<\/span>userAgentData<span class=\"token punctuation\">.<\/span>brands<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><p><br><span class=\"token punctuation\">[<\/span><br><span class=\"token punctuation\">{<\/span><br>brand<span class=\"token operator\">:<\/span> <span class=\"token string\">'Chromium'<\/span><span class=\"token punctuation\">,<\/span><br>version<span class=\"token operator\">:<\/span> <span class=\"token string\">'84'<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token punctuation\">{<\/span><br>brand<span class=\"token operator\">:<\/span> <span class=\"token string\">'Google Chrome'<\/span><span class=\"token punctuation\">,<\/span><br>version<span class=\"token operator\">:<\/span> <span class=\"token string\">'84'<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">;<\/span><\/p><p><br>console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span>navigator<span class=\"token punctuation\">.<\/span>userAgentData<span class=\"token punctuation\">.<\/span>mobile<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/p><p><br><span class=\"token boolean\">false<\/span><span class=\"token punctuation\">;<\/span><\/p><\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>Se accede a los valores adicionales a trav\u00e9s del <code>getHighEntropyValues()<\/code> llamada.  El t\u00e9rmino \u00abalta entrop\u00eda\u00bb es una referencia a <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/en.wikipedia.org\/wiki\/Entropy_(information_theory)\">entrop\u00eda de informaci\u00f3n<\/a>, dicho de otra forma, la cantidad de informaci\u00f3n que estos valores revelan sobre el navegador del usuario.  Del mismo modo que con la solicitud de encabezados adicionales, depende del navegador qu\u00e9 valores, si corresponde, se devuelven.<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-js\"><code class=\"language-js\"><br>navigator<br><span class=\"token punctuation\">.<\/span>userAgentData<span class=\"token punctuation\">.<\/span><span class=\"token function\">getHighEntropyValues<\/span><span class=\"token punctuation\">(<\/span><br><span class=\"token punctuation\">[<\/span><span class=\"token string\">\"architecture\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"model\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"platform\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"platformVersion\"<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token string\">\"uaFullVersion\"<\/span><span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">)<\/span><br><span class=\"token punctuation\">.<\/span><span class=\"token function\">then<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">ua<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span>ua<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><p><br><span class=\"token punctuation\">{<\/span><br><span class=\"token string\">\"architecture\"<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">\"x86\"<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token string\">\"model\"<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">\"\"<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token string\">\"platform\"<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">\"Linux\"<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token string\">\"platformVersion\"<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">\"\"<\/span><span class=\"token punctuation\">,<\/span><br><span class=\"token string\">\"uaFullVersion\"<\/span><span class=\"token operator\">:<\/span> <span class=\"token string\">\"84.0.4143.2\"<\/span><br><span class=\"token punctuation\">}<\/span><\/p><\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<h3 id=\"demo\"><span class=\"ez-toc-section\" id=\"Manifestacion\"><\/span>Manifestaci\u00f3n <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Puede probar tanto los encabezados como la API de JavaScript en su propio dispositivo en<br \/>\n<a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/user-agent-client-hints.glitch.me\">user-agent-client-hints.glitch.me<\/a>.<\/p>\n<p>\n  <iframe allow=\"camera; clipboard; clipboard-read; clipboard-write; encrypted-media; geolocation; microphone; midi; vr\" loading=\"lazy\" src=\"https:\/\/glitch.com\/embed\/#!\/embed\/user-agent-client-hints?attributionHidden=true&amp;sidebarCollapsed=true&amp;path=README.md&amp;previewSize=100\" style=\"height: 100%; width: 100%; border: 0;\" title=\"user-agent-client-hints on Glitch\"><\/iframe>\n<\/p>\n<div class=\"w-aside w-aside--note\">\n<p>Aseg\u00farese de que est\u00e1 usando Chrome 84 Beta o id\u00e9ntico con<br \/>\n<code>chrome:\/\/flags\/#enable-experimental-web-platform-features<\/code> habilitado.<\/p>\n<\/div>\n<h3 id=\"hint-life-time-and-resetting\"><span class=\"ez-toc-section\" id=\"Sugerencia-de-por-vida-y-restablecimiento\"><\/span>Sugerencia de por vida y restablecimiento <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sugerencias especificadas a trav\u00e9s de el <code>Accept-CH<\/code> El encabezado se enviar\u00e1 durante la sesi\u00f3n del navegador o hasta que se especifique un recopilatorio distinto de sugerencias.<\/p>\n<p>Eso significa que si el servidor env\u00eda:<\/p>\n<p>\u2b07\ufe0f <em>Respuesta<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Accept-CH: UA-Full-Version<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>Entonces el navegador enviar\u00e1 el <code>Sec-CH-UA-Full-Version<\/code> encabezado en todas las solicitudes de ese sitio hasta que se cierre el navegador.<\/p>\n<p>\u2b06\ufe0f <em>Solicitudes posteriores<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Sec-CH-UA-Full-Version: \"84.0.4143.2\"<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>A pesar de todo, si otro <code>Accept-CH<\/code> se recibe el encabezado, entonces eso <strong>reemplazar absolutamente<\/strong> las sugerencias actuales que env\u00eda el navegador.<\/p>\n<p>\u2b07\ufe0f <em>Respuesta<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Accept-CH: UA-Platform<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>\u2b06\ufe0f <em>Solicitudes posteriores<\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Sec-CH-UA-Platform: \"Android\"<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>El anteriormente solicitado <code>Sec-CH-UA-Full-Version<\/code> <strong>no ser\u00e1 enviado<\/strong>.<\/p>\n<p>Es mejor pensar en el <code>Accept-CH<\/code> encabezado que especifica el conjunto completo de sugerencias deseadas para esa p\u00e1gina, lo que significa que el navegador env\u00eda las sugerencias especificadas para todos los subrecursos en esa p\u00e1gina.  Aunque las sugerencias persistir\u00e1n hasta la siguiente navegaci\u00f3n, el sitio no debe confiar ni hacerse cargo que se entregar\u00e1n.<\/p>\n<div class=\"w-aside w-aside--success\">\n<p><strong>\u00c9xito:<\/strong><br \/>\nAseg\u00farese siempre de poder ofrecer una experiencia significativa sin esta informaci\u00f3n.  Esto es para impulsar la experiencia del usuario, no para definirla.  \u00a1Es por esto que se llaman \u00abpistas\u00bb y no \u00abrespuestas\u00bb o \u00abrequerimientos\u00bb!<\/p>\n<\/div>\n<p>Adem\u00e1s puede utilizar esto para eliminar de manera efectiva todas las sugerencias enviadas por el navegador enviando un espacio en blanco <code>Accept-CH<\/code> en la respuesta.  Considere agregar esto en cualquier lugar donde el usuario est\u00e9 restableciendo preferencias o cerrando sesi\u00f3n en su sitio.<\/p>\n<p>Este patr\u00f3n adem\u00e1s coincide con el funcionamiento de las sugerencias a trav\u00e9s del<br \/>\n<code>&lt;meta http-equiv=\"Accept-CH\" \u2026&gt;<\/code> etiqueta.  Las sugerencias solicitadas solo se enviar\u00e1n en solicitudes iniciadas por la p\u00e1gina y no en ninguna navegaci\u00f3n posterior.<\/p>\n<h3 id=\"hint-scope-and-cross-origin-requests\"><span class=\"ez-toc-section\" id=\"Ambito-de-sugerencia-y-solicitudes-de-origen-cruzado\"><\/span>\u00c1mbito de sugerencia y solicitudes de origen cruzado <span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>De manera predeterminada, las sugerencias del cliente solo se enviar\u00e1n en solicitudes del mismo origen.  Eso significa que si pide sugerencias espec\u00edficas sobre <code>https:\/\/example.com<\/code>, pero los recursos que desea aprovechar al m\u00e1ximo est\u00e1n en <code>https:\/\/downloads.example.com<\/code> ellos <strong>no lo har\u00e9<\/strong><br \/>\nrecibir sugerencias.<\/p>\n<p>Para permitir sugerencias en solicitudes de origen cruzado, cada sugerencia y origen deben especificarse a trav\u00e9s de un <code>Feature-Policy<\/code> encabezamiento.  Esto especifica cada sugerencia (con el prefijo <code>ch-<\/code>) y la lista permitida de or\u00edgenes que deber\u00edan recibir la sugerencia.  A modo de ejemplo:<\/p>\n<p>\u2b07\ufe0f <em>Respuesta de <code>example.com<\/code><\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Accept-CH: UA-Platform, DPR<br>Feature-Policy: ch-UA-Platform downloads.example.com;<br>ch-DPR cdn.provider img.example.com<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>\u2b06\ufe0f <em>Solicitud de <code>downloads.example.com<\/code><\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Sec-CH-UA-Platform: \"Android\"<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p>\u2b06\ufe0f <em>Solicitudes para <code>cdn.provider<\/code> o <code>img.example.com<\/code><\/em><\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">DPR: 2<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<h2 id=\"where-to-use-user-agent-client-hints\"><span class=\"ez-toc-section\" id=\"%C2%BFDonde-usar-las-sugerencias-de-cliente-de-agente-de-usuario\"><\/span>\u00bfD\u00f3nde usar las sugerencias de cliente de agente de usuario? <span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>La soluci\u00f3n r\u00e1pida es que debe refactorizar cualquier instancia en la que est\u00e9 analizando el encabezado User-Agent o haciendo uso de cualquiera de las llamadas de JavaScript que acceden a la misma informaci\u00f3n (dicho de otra forma, <code>navigator.userAgent<\/code>, <code>navigator.appVersion<\/code>o <code>navigator.platform<\/code>) para hacer uso de las sugerencias de cliente de agente de usuario en su lugar.<\/p>\n<p>Llevando esto un paso m\u00e1s adelante, debe volver a evaluar el uso que hace de la informaci\u00f3n del agente de usuario y reemplazarla por otros m\u00e9todos siempre y cuando sea factible.  Habitualmente, puede alcanzar el mismo objetivo haciendo uso de la mejora progresiva, la detecci\u00f3n de funciones o el dise\u00f1o receptivo.  El problema b\u00e1sico de confiar en los datos de usuario-agente es que siempre mantiene un mapeo entre la propiedad que est\u00e1 inspeccionando y el comportamiento que habilita.  Es una sobrecarga de mantenimiento para asegurar que su detecci\u00f3n sea completa y est\u00e9 actualizada.<\/p>\n<p>Con estas advertencias en mente, el <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/github.com\/WICG\/ua-client-hints#use-cases\">El repositorio User-Agent Client Hints enumera algunos casos de uso v\u00e1lidos<\/a> para sitios.<\/p>\n<h2 id=\"what-happens-to-the-user-agent-string\"><span class=\"ez-toc-section\" id=\"%C2%BFQue-sucede-con-la-cadena-de-usuario-agente\"><\/span>\u00bfQu\u00e9 sucede con la cadena de usuario-agente? <span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>El plan es minimizar la capacidad de rastreo encubierto en la web reduciendo la cantidad de informaci\u00f3n de identificaci\u00f3n expuesta por la cadena de Usuario-Agente existente sin causar interrupciones indebidas en los sitios existentes.  La introducci\u00f3n de sugerencias de cliente de agente de usuario ahora le brinda la posibilidad de entender y experimentar con la nueva capacidad, antes de que se realicen cambios en las cadenas de agente de usuario.<\/p>\n<p><a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/groups.google.com\/a\/chromium.org\/d\/msg\/blink-dev\/-2JIRNMWJ7s\/u-YzXjZ8BAAJ\">Por \u00faltimo<\/a>, la informaci\u00f3n en la cadena Usuario-Agente se reducir\u00e1 para que mantenga el formato heredado y, a la vez, solo proporcione el mismo navegador de alto nivel y la informaci\u00f3n de versi\u00f3n significativa seg\u00fan las sugerencias predeterminadas.  En Chromium, este cambio se ha pospuesto hasta al menos 2021 para proporcionar tiempo adicional para que el ecosistema eval\u00fae las nuevas capacidades de User Agent Client Hints.<\/p>\n<p>Puede probar una versi\u00f3n de esto habilitando el<br \/>\n<code>chrome:\/\/flags\/#freeze-user-agent<\/code> flag de Chrome 84. Esto devolver\u00e1 una cadena con las entradas hist\u00f3ricas por razones de compatibilidad, pero con detalles espec\u00edficos.  A modo de ejemplo, algo como:<\/p>\n<p><web-copy-code><\/p>\n<pre class=\"language-text\"><code class=\"language-text\">Mozilla\/5.0 (Linux; Android 9; Unspecified Device) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/85.0.0.0 Mobile Safari\/537.36<\/code><\/pre>\n<p><\/web-copy-code><\/p>\n<p><em>Foto por <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/unsplash.com\/@szolkin?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Sergey Zolkin<\/a><br \/>\nen<br \/>\n<a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/unsplash.com\/photos\/m9qMoh-scfE?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Unsplash<\/a><\/em><\/p>\n<p>    <web-feedback additional-questions=\"api\"><\/web-feedback>\n  <\/div>\n","protected":false},"excerpt":{"rendered":"<p>User-Agent Client Hints est une nouvelle extension de l&#039;API Client Hints, permettant aux d\u00e9veloppeurs d&#039;acc\u00e9der aux informations sur le navigateur d&#039;un utilisateur d&#039;une mani\u00e8re\u2026<\/p>","protected":false},"author":1,"featured_media":82969,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1356],"tags":[],"class_list":["post-82967","post","type-post","status-publish","format-standard","has-post-thumbnail","category-dev"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v28.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario - R Marketing Digital<\/title>\n<meta name=\"description\" content=\"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario\" \/>\n<meta property=\"og:description\" content=\"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/\" \/>\n<meta property=\"og:site_name\" content=\"R Marketing Digital\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-09T22:31:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"376\" \/>\n\t<meta property=\"og:image:height\" content=\"240\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"R Marketing Digital\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/\"},\"author\":{\"name\":\"R Marketing Digital\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/#\\\/schema\\\/person\\\/7c0d9782b2977b840b3740f00c69a73e\"},\"headline\":\"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario\",\"datePublished\":\"2022-10-09T22:31:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/\"},\"wordCount\":2127,\"image\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rmarketingdigital.com\\\/wp-content\\\/uploads\\\/2020\\\/09\\\/uach-thumbnail-4916918.jpg\",\"articleSection\":[\"Dev\"],\"inLanguage\":\"fr-FR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/\",\"url\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/\",\"name\":\"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario - R Marketing Digital\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rmarketingdigital.com\\\/wp-content\\\/uploads\\\/2020\\\/09\\\/uach-thumbnail-4916918.jpg\",\"datePublished\":\"2022-10-09T22:31:19+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/#\\\/schema\\\/person\\\/7c0d9782b2977b840b3740f00c69a73e\"},\"description\":\"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador\",\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/dev\\\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\\\/#primaryimage\",\"url\":\"https:\\\/\\\/rmarketingdigital.com\\\/wp-content\\\/uploads\\\/2020\\\/09\\\/uach-thumbnail-4916918.jpg\",\"contentUrl\":\"https:\\\/\\\/rmarketingdigital.com\\\/wp-content\\\/uploads\\\/2020\\\/09\\\/uach-thumbnail-4916918.jpg\",\"width\":376,\"height\":240,\"caption\":\"uach-thumbnail-4916918-2258727-jpg\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/#website\",\"url\":\"https:\\\/\\\/rmarketingdigital.com\\\/\",\"name\":\"R Marketing Digital\",\"description\":\"Agencia SEO | Publicidad redes sociales | Community Management\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rmarketingdigital.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/rmarketingdigital.com\\\/#\\\/schema\\\/person\\\/7c0d9782b2977b840b3740f00c69a73e\",\"name\":\"R Marketing Digital\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g\",\"caption\":\"R Marketing Digital\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario - R Marketing Digital","description":"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/","og_locale":"fr_FR","og_type":"article","og_title":"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario","og_description":"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador","og_url":"https:\/\/rmarketingdigital.com\/fr\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/","og_site_name":"R Marketing Digital","article_published_time":"2022-10-09T22:31:19+00:00","og_image":[{"width":376,"height":240,"url":"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg","type":"image\/jpeg"}],"author":"R Marketing Digital","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#article","isPartOf":{"@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/"},"author":{"name":"R Marketing Digital","@id":"https:\/\/rmarketingdigital.com\/#\/schema\/person\/7c0d9782b2977b840b3740f00c69a73e"},"headline":"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario","datePublished":"2022-10-09T22:31:19+00:00","mainEntityOfPage":{"@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/"},"wordCount":2127,"image":{"@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#primaryimage"},"thumbnailUrl":"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg","articleSection":["Dev"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/","url":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/","name":"Mejora de la privacidad del usuario y la experiencia del desarrollador con sugerencias de cliente de agente de usuario - R Marketing Digital","isPartOf":{"@id":"https:\/\/rmarketingdigital.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#primaryimage"},"image":{"@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#primaryimage"},"thumbnailUrl":"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg","datePublished":"2022-10-09T22:31:19+00:00","author":{"@id":"https:\/\/rmarketingdigital.com\/#\/schema\/person\/7c0d9782b2977b840b3740f00c69a73e"},"description":"User-Agent Client Hints es una nueva expansi\u00f3n de la API de Client Hints, que posibilita a los desarrolladores ingresar a informaci\u00f3n sobre el navegador","inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/rmarketingdigital.com\/dev\/mejora-de-la-privacidad-del-usuario-y-la-experiencia-del-desarrollador-con-sugerencias-de-cliente-de-agente-de-usuario\/#primaryimage","url":"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg","contentUrl":"https:\/\/rmarketingdigital.com\/wp-content\/uploads\/2020\/09\/uach-thumbnail-4916918.jpg","width":376,"height":240,"caption":"uach-thumbnail-4916918-2258727-jpg"},{"@type":"WebSite","@id":"https:\/\/rmarketingdigital.com\/#website","url":"https:\/\/rmarketingdigital.com\/","name":"Marketing num\u00e9rique","description":"Agence de r\u00e9f\u00e9rencement | Publicit\u00e9 sur les r\u00e9seaux sociaux | Gestion de communaut\u00e9","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rmarketingdigital.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/rmarketingdigital.com\/#\/schema\/person\/7c0d9782b2977b840b3740f00c69a73e","name":"Marketing num\u00e9rique","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c5599c203e0120b8ccbff4666af86f35f9b3dcad468a8bc6295313a3964a80be?s=96&d=mm&r=g","caption":"R Marketing Digital"}}]}},"_links":{"self":[{"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/posts\/82967","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/comments?post=82967"}],"version-history":[{"count":0,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/posts\/82967\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/media\/82969"}],"wp:attachment":[{"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/media?parent=82967"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/categories?post=82967"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rmarketingdigital.com\/fr\/wp-json\/wp\/v2\/tags?post=82967"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}