Soubory cookie v JavaScript: Set, Get & Delete Example
Co jsou cookies?
Cookie je část dat, která jsou uložena ve vašem počítači, aby k nim měl přístup váš prohlížeč. Také jste mohli vědomě či nevědomě využívat výhod cookies. Uložili jste si někdy své heslo k Facebooku, abyste ho nemuseli zadávat pokaždé, když se pokoušíte přihlásit? Pokud ano, pak používáte cookies. Cookies se ukládají jako páry klíč/hodnota.
Proč potřebujete cookie?
Komunikace mezi a webový prohlížeč a server se děje pomocí bezstavového protokolu s názvem HTTP. Bezstavový protokol zpracovává každý požadavek nezávisle. Server tedy data po odeslání do prohlížeče neuchovává. Ale v mnoha situacích budou data vyžadována znovu. Tady jsou sušenky do obrázku. S cookies nebude muset webový prohlížeč komunikovat se serverem pokaždé, když jsou vyžadována data. Místo toho jej lze načíst přímo z počítače.
Javascript Nastavit cookie
Soubory cookie můžete vytvářet pomocí dokumentu. vlastnost cookie, jako je tato.
document.cookie = "cookiename=cookievalue"
Ke svému cookie můžete dokonce přidat datum vypršení platnosti, takže konkrétní soubor cookie bude k určenému datu z počítače odstraněn. Datum expirace by mělo být nastaveno ve formátu UTC/GMT. Pokud datum vypršení platnosti nenastavíte, soubor cookie bude odstraněn, když uživatel zavře prohlížeč.
document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC"
Můžete také nastavit doménu a cestu a určit, do které domény a do kterých adresářů v konkrétní doméně cookie patří. Ve výchozím nastavení patří soubor cookie stránce, která soubor cookie nastavuje.
document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC; path=/ "
//vytvoří cookie s doménou k aktuální stránce a cestou k celé doméně.
JavaSkript get Cookie
K cookie můžete přistupovat takto, což vrátí všechny soubory cookie uložené pro aktuální doménu.
var x = document.cookie
JavaSkript Odstranit cookie
Chcete-li smazat cookie, stačí nastavit hodnotu cookie na prázdnou a nastavit hodnotu expires na prošlé datum.
document.cookie = "cookiename= ; expires = Thu, 01 Jan 1970 00:00:00 GMT"
Zkuste tento příklad sami
Speciální pokyny pro zprovoznění kódu… Stiskněte dvakrát tlačítko spuštění
<html> <head> <title>Cookie!!!</title> <script type="text/javascript"> function createCookie(cookieName,cookieValue,daysToExpire) { var date = new Date(); date.setTime(date.getTime()+(daysToExpire*24*60*60*1000)); document.cookie = cookieName + "=" + cookieValue + "; expires=" + date.toGMTString(); } function accessCookie(cookieName) { var name = cookieName + "="; var allCookieArray = document.cookie.split(';'); for(var i=0; i<allCookieArray.length; i++) { var temp = allCookieArray[i].trim(); if (temp.indexOf(name)==0) return temp.substring(name.length,temp.length); } return ""; } function checkCookie() { var user = accessCookie("testCookie"); if (user!="") alert("Welcome Back " + user + "!!!"); else { user = prompt("Please enter your name"); num = prompt("How many days you want to store your name on your computer?"); if (user!="" && user!=null) { createCookie("testCookie", user, num); } } } </script> </head> <body onload="checkCookie()"></body> </html>