Informasjonskapsler i JavaSkript: Set, Get & Delete Eksempel

Hva er cookies?

En informasjonskapsel er et stykke data som er lagret på datamaskinen din for å få tilgang til nettleseren din. Du kan også ha hatt glede av fordelene med informasjonskapsler bevisst eller ubevisst. Har du noen gang lagret Facebook-passordet ditt slik at du ikke trenger å skrive det inn hver gang du prøver å logge på? Hvis ja, bruker du informasjonskapsler. Informasjonskapsler lagres som nøkkel/verdi-par.

Hvorfor trenger du en informasjonskapsel?

Kommunikasjonen mellom en nettleser og serveren skjer ved hjelp av en statsløs protokoll kalt HTTP. Statsløs protokoll behandler hver forespørsel uavhengig. Så serveren beholder ikke dataene etter å ha sendt dem til nettleseren. Men i mange situasjoner vil dataene kreves igjen. Her kommer informasjonskapsler inn i et bilde. Med informasjonskapsler trenger ikke nettleseren å kommunisere med serveren hver gang dataene kreves. I stedet kan den hentes direkte fra datamaskinen.

Javascript Sett informasjonskapsel

Du kan lage informasjonskapsler ved hjelp av dokument. informasjonskapselegenskap som dette.

document.cookie = "cookiename=cookievalue"

Du kan til og med legge til utløpsdato til informasjonskapselen din slik at den bestemte informasjonskapselen vil bli fjernet fra datamaskinen på den angitte datoen. Utløpsdatoen bør settes i UTC/GMT-format. Hvis du ikke angir utløpsdatoen, vil informasjonskapselen bli fjernet når brukeren lukker nettleseren.

document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC"

Du kan også angi domenet og banen for å spesifisere hvilket domene og hvilke kataloger i det spesifikke domenet informasjonskapselen tilhører. Som standard tilhører en informasjonskapsel siden som setter informasjonskapselen.

document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC; path=/ "

//opprett en informasjonskapsel med et domene til gjeldende side og sti til hele domenet.

JavaSkript få informasjonskapsel

Du kan få tilgang til informasjonskapselen slik som vil returnere alle informasjonskapslene som er lagret for det gjeldende domenet.

var x =  document.cookie

JavaSkriptslett informasjonskapsel

For å slette en informasjonskapsel trenger du bare å sette verdien på informasjonskapselen til tom og sette verdien på utløper til en passert dato.

document.cookie = "cookiename= ; expires = Thu, 01 Jan 1970 00:00:00 GMT"

Prøv dette eksemplet selv

Spesielle instruksjoner for å få koden til å fungere ... Trykk to ganger på kjør-knappen

<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>