Las cookies proporcionan una forma para que un cliente y un servidor interactúen y transmitan información a través de HTTP. Esto permite que el cliente almacene información de estado a pesar de usar HTTP, que es un protocolo sin estado. Cuando un navegador solicita una página web de un servidor, el servidor atiende la solicitud y se “olvida” de la visita. Pero pasa cierta información al navegador del usuario. El navegador almacena la información en forma de pares clave=valor y también gestiona esta información.
- La información de las cookies se pasa en el encabezado de la solicitud HTTP durante cada visita posterior al dominio desde el navegador del usuario.
- La información como los detalles de inicio de sesión, el consentimiento y otras preferencias se utilizan para mejorar y personalizar la experiencia del usuario.
Las cookies HTTP expiran, la fecha y la hora se especifican en el atributo «expires». Como resultado, el navegador elimina automáticamente las cookies cuando la fecha y la hora superan la fecha (y la hora) de caducidad. Como este atributo es configurable*, es posible eliminar todas las cookies configurando la «caducidad» a cualquier valor que ya haya pasado.
La propiedad de cookies del documento actual se utiliza para modificar los atributos de las cookies compradas mediante la propiedad de cookies HTML DOM . document.cookie devuelve una única string de todas las cookies separadas por punto y coma asociadas con el documento actual .
Sintaxis:
document.cookie = "key=value";
Código: El siguiente código ilustra cómo se pueden eliminar las cookies usando JavaScript. El código se ejecuta en un editor en línea para demostrar que el código solo puede eliminar las cookies creadas por su sitio.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> Clear cookies using Javascript </title> </head> <body> <center> <h1 style="color:green"> GeeksforGeeks </h1> <script type="text/javascript"> document.cookie = "1P_JAR=akjdsbJKHdjhbk"; document.cookie = "CONSENT=YES+IN.en+20170903-09-0"; function displayCookies() { var displayCookies = document.getElementById("display"); displayCookies.innerHTML = document.cookie; } function deleteCookies() { var allCookies = document.cookie.split(';'); // The "expire" attribute of every cookie is // Set to "Thu, 01 Jan 1970 00:00:00 GMT" for (var i = 0; i < allCookies.length; i++) document.cookie = allCookies[i] + "=;expires=" + new Date(0).toUTCString(); displayCookies.innerHTML = document.cookie; } </script> <button onclick="displayCookies()">Display Cookies</button> <button onclick="deleteCookies()">Delete Cookies</button> <p id="display"></p> </center> </body> </html>
Salida:
Nota: Si el atributo «HTTP» de una cookie se establece en «Verdadero», no es posible modificar ninguno de sus atributos mediante JavaScript.