Forskel mellem cookie og session

Indholdsfortegnelse:

Anonim

Hvad er cookie?

En cookie er en lille fil med den maksimale størrelse på 4KB, som webserveren gemmer på klientcomputeren. Når en cookie er indstillet, returnerer alle sideanmodninger, der følger, cookienavn og værdi. En cookie kan kun læses fra det domæne, som den er udstedt fra. For eksempel kan et cookiesæt, der bruger domænet www.guru99.com, ikke læses fra domænet career.guru99.com. De fleste af hjemmesiderne på Internettet viser elementer fra andre domæner som f.eks. Reklame. Domænerne, der betjener disse elementer, kan også indstille deres egne cookies. Disse kaldes tredjepartscookies. En cookie oprettet af en bruger kan kun være synlig for dem. Andre brugere kan ikke se dens værdi. De fleste webbrowsere har muligheder for at deaktivere cookies, tredjepartscookies eller begge dele.

Hvad er en session?

En session er en global variabel, der er gemt på serveren. Hver session tildeles et unikt id, som bruges til at hente lagrede værdier. Hver gang en session oprettes, gemmes en cookie, der indeholder det unikke session-id, på brugerens computer og returneres med hver anmodning til serveren. Hvis klientbrowseren ikke understøtter cookies, vises det unikke sessions-id i URL'en. Sessioner har kapacitet til at gemme relativt store data sammenlignet med cookies.

Sessionsværdierne slettes automatisk, når browseren lukkes. Hvis du vil gemme værdierne permanent, skal du gemme dem i databasen.

Ligesom $ _COOKIE-arrayvariablen gemmes sessionsvariabler i $ _SESSION-arrayvariablen. Ligesom cookies skal sessionen startes inden HTML-tags.

Nøgleforskel

  • Cookies er klientsidefiler, der indeholder brugeroplysninger, mens sessioner er serversidesfiler, der indeholder brugerinformation.
  • Cookie er ikke afhængig af session, men session afhænger af cookie.
  • Cookie udløber afhængigt af den levetid, du indstiller den, mens en session slutter, når en bruger lukker sin browser.
  • Den maksimale cookiestørrelse er 4KB, mens du i session kan gemme så mange data, som du vil.
  • Cookie har ikke en funktion ved navn unsetcookie (), mens du i Session kan bruge Session_destroy (); som bruges til at ødelægge alle registrerede data eller til at fjerne nogle af dem

Hvorfor og hvornår skal jeg bruge cookies?

Http er en statsløs protokol; cookies giver os mulighed for at spore applikationens tilstand ved hjælp af små filer, der er gemt på brugerens computer. Stien, hvor cookies blev gemt, afhænger af browseren. Internet Explorer gemmer dem normalt i mappen Temporal Internet Files. Personalisering af brugeroplevelsen - dette opnås ved at give brugerne mulighed for at vælge deres præferencer. Den efterspurgte side er tilpasset efter de indstillede præferencer i cookies. Sporing af de sider, som en bruger har besøgt.

Hvorfor og hvornår skal du bruge sessioner?

At gemme vigtige oplysninger som bruger-id mere sikkert på serveren, hvor ondsindede brugere ikke kan temperere med dem. Sessioner bruges til at overføre værdier fra en side til en anden.

Det bruges også, når du vil have alternativet til cookies i browsere, der ikke understøtter cookies, til at gemme globale variabler på en effektiv og mere sikker måde sammenlignet med at sende dem i URL'en, udvikle en applikation som en indkøbskurv, der skal midlertidigt gem information med en kapacitet større end 4KB.

Cookie Vs. Session

Cookie Session
  • Cookies er filer på klientsiden, der indeholder brugeroplysninger
  • Sessioner er serversides filer, der indeholder brugeroplysninger
  • Cookie slutter afhængigt af den levetid, du indstiller den
  • En session slutter, når en bruger lukker sin browser
  • Du behøver ikke starte cookie, da den er gemt i din lokale maskine
  • Før du bruger $ _SESSION i PHP, skal du skrive session_start (); Ligeledes for andre sprog
  • Den officielle maksimale cookiestørrelse er 4KB
  • Inden for session kan du gemme så mange data, som du vil. De eneste grænser, du kan nå, er den maksimale hukommelse, som et script kan forbruge ad gangen, hvilket er 128 MB som standard
  • En cookie er ikke afhængig af sessionen
  • En session er afhængig af cookie
  • Der er ingen funktion, der hedder unsetcookie ()
  • Session_destroy (); bruges til at ødelægge alle registrerede data eller til at fjerne nogle af dem