¿Cómo identificar de forma única las computadoras que visitan el sitio web en JavaScript?

Si desea identificar las computadoras que visitan su sitio web, deberá almacenar las cookies de su sitio web en las computadoras visitantes.

Cookies: En palabras simples, las cookies HTTP son pequeñas notas que almacenan las preferencias del usuario sobre un sitio web en particular. Por ejemplo, cuando un usuario compra en línea sin iniciar sesión, puede poner algunos artículos en el carrito. Incluso después de cerrar el navegador y volver a cargar el sitio web, los artículos almacenados en el carrito no sufren ningún cambio. Estos datos del usuario se almacenan como una cookie en el propio ordenador del usuario. Entonces, la próxima vez que el usuario visite el sitio web, los datos pueden devolverse al servidor del sitio web. Por lo tanto, el sitio web puede identificar de forma única la computadora.

Para obtener más detalles sobre ¿Cómo se utilizan las cookies en un sitio web?

Procedimiento de funcionamiento de las cookies:

  • Cada vez que una computadora visita su sitio web, el servidor envía una cookie en un formato clave-valor al navegador. Una vez que el navegador acepta la cookie, se almacena como un registro de texto en el hardware de la computadora.
  • Ahora, cuando la computadora visita su sitio web, esta cookie se recupera de la computadora y se envía al servidor. De esta forma, el servidor identifica el ordenador que visita el sitio web y recuerda el intercambio de datos anterior.

Cookies en JavaScript: JavaScript puede realizar todas las operaciones como leer, crear y eliminar cookies con la propiedad document.cookie . Un registro de texto de cookie consta de cuatro atributos.

  1. Nombre-Valor O Clave-Valor: estos son los únicos pares de atributos que se envían desde el navegador al servidor cuando una computadora visita un sitio web repetidamente. Resto todos los atributos son utilizados solo por el navegador para determinar otras propiedades.
  2. Dominio y ruta: el nombre de dominio de su sitio web que controla la autoridad del sitio web en Internet. La ruta al directorio o página web que establece la cookie.
  3. Seguro y HttpOnly: Secure se usa para mantener el intercambio de cookies limitado a la transmisión encriptada, dirigiendo a los navegadores para que usen cookies solo a través de conexiones seguras/encriptadas. HttpOnly indica a los navegadores que no expongan cookies a través de canales que no sean requests HTTP (y HTTPS).
  4. Expires and Max-Age: Expires define el tiempo durante el cual la cookie se almacena en un navegador, después de lo cual se elimina. Si está en blanco, la cookie caducará cuando el visitante cierre el navegador.

Ejemplo: El siguiente ejemplo demuestra cookies, que almacena cookies durante 2 días y las usa para saludar al usuario en su idioma. Al ejecutar este código, el sistema le pide que ingrese su idioma “Inglés/Español”. Después de ingresar esto, puede ejecutar el código nuevamente y ver que el sistema dice «hola» al usuario en el idioma seleccionado.

<!DOCTYPE html>
<html>
    <head>
    <script>
        function setCookie(cookieName, cookieValue) {
            var d = new Date();
            d.setTime(d.getTime() + 2 * 24 * 60 * 60 * 1000);
            var expires = "expires=" + d.toGMTString();
            document.cookie = cookieName + "=" 
            + cookieValue + ";" + expires + ";path=/";
        }
        function getCookie(cookieName) {
            var name = cookieName + "=";
            var decodedCookie = decodeURIComponent(document.cookie);
            var cookieArray = decodedCookie.split(";");
            for (var i = 0; i < cookieArray.length; i++) {
                var cookie = cookieArray[i];
                while (cookie.charAt(0) == " ") {
                    cookie = cookie.substring(1);
                }
                if (cookie.indexOf(name) == 0) {
                    return cookie.substring(name.length, cookie.length);
                }
            }
            return "";
        }
        function checkCookie() {
            var language = getCookie("language");
            if (language != "") {
                if (language == "english") alert("Hello Friend!");
                else if (language == "spanish") alert("Hola Amigo!");
            }
            language = prompt
            ("Please enter language[english/spanish]:", "");
            if (language != "" && language != null) {
                if (language == "english") 
                document.write
                ("You selected english! Now RUN it again.");
                else if (language == "spanish") 
                document.write
                ("You selected spanish! Now RUN it again.");
                setCookie("language", language);
            }
        }
    </script>
    </head>
    <body onload="checkCookie()"></body>
</html>                    

Salida: si se selecciona «inglés», aparece un cuadro de mensaje de alerta y luego el mensaje del documento.

  Hello Friend!
  You selected english! Now RUN it again.

Una cookie no garantiza que podrá identificar el ordenador la próxima vez que el usuario visite el sitio web. Esto sucede por tres razones.

  • El usuario tiene la autoridad completa para eliminar cookies y borrar caché.
  • Las cookies están diseñadas para identificar los navegadores. La próxima vez, si el usuario visita su sitio web a través de un navegador diferente, las cookies se almacenarán por separado en ambos navegadores.
  • Las cookies no funcionarán si el usuario ha desactivado el soporte local de cookies en el navegador.

Para identificar siempre la computadora que visita su sitio web, deberá escribir una aplicación de sistema en la computadora visitante.

Publicación traducida automáticamente

Artículo escrito por chaitragurjar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *