Cookies JavaScript


Pieczywo dla informacji użytkownika są przechowywane stron internetowych.


Co to są pliki cookie?

Cookies są dane zapisane w pliku tekstowym na komputerze w.

Gdy serwer WWW wysyła stronę internetową do przeglądarki po zakończeniu połączenia, serwer nie rejestruje informacji o użytkowniku.

Cookies zadaniem jest rozwiązać "jak nagrać dane użytkownika klienta":

  • Gdy użytkownik odwiedza stronę internetową, jego nazwisko może być zapisane w pliku cookie.
  • Gdy następnym razem użytkownik dostęp do strony, można przeczytać zapisy dostępu użytkownika w pliku cookie.

Ciasteczka z par wartości nazwa / przechowywane są w następujący sposób:

username=John Doe

Gdy przeglądarka żąda strony internetowej z serwera, ciasteczka należące do tej strony zostanie dodany do wniosku. Serwer w celu uzyskania informacji o użytkownikach w ten sposób.


Użyj JavaScript do tworzenia Cookie

JavaScript nieruchomość document.cookie mogą być wykorzystywane do tworzenia, czytać i usuwać pliki cookie.

JavaScript, tworzyć cookie w następujący sposób:

document.cookie="username=John Doe";

Można również dodać czas ważności cookies (UTC lub czasu GMT). Domyślnie cookies usuwane po zamknięciu przeglądarki:

document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT";

Można użyć parametr path opowiada ścieżkę plików cookie w przeglądarce. Domyślnie cookies należy do bieżącej strony.

document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";

Użyj JavaScript czytać Cookie

W JavaScript można użyć następującego kodu do odczytu plików cookie:

var x = document.cookie;

uwaga document.cookie ciąg powróci wszelkiego rodzaju ciasteczek, typ format: cookie1 = value; cookie2 = value; cookie3 = value;


Modyfikacja Cookie przy użyciu JavaScript

W JavaScript, modyfikować ciasteczka podobne do tworzenia ciasteczek, co następuje:

document.cookie="username=John Smith; expires=Thu, 18 Dec 2013 12:00:00 GMT; path=/";

Stary ciasteczko zostanie zastąpiony.


Usuń Cookie przy użyciu JavaScript

Usuń cookies jest bardzo prosta. Wystarczy tylko ustawić parametry wygasa poprzednim razem, tak jak pokazano poniżej, jest ustawiony na czw, 01 styczeń 1970 00:00:00 GMT:

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

Należy pamiętać, że po usunięciu bez określania wartości cookie.


Cookie ciąg

Obiekt document.cookie wygląda jak zwykły ciąg tekstowy, w rzeczywistości tak nie jest.

Nawet jeśli piszesz kompletne document.cookie cookies ciąg, gdy ponownie odczytać informacje z plików cookie, informacje Cookie to pary nazwa / wartość w postaci wrażeń.

Jeśli ustawisz nowy plik cookie, stary cookies nie zostaną nadpisane. Nowa ciasteczko zostanie dodany do document.cookie, więc jeśli ponownie przeczytać document.cookie otrzymasz dane w następujący sposób:

cookie1 = value; cookie2 = value;

Jeśli chcesz znaleźć konkretną wartość cookie, należy utworzyć funkcję JavaScript, aby znaleźć wartość cookie w ciągu cookies.


przypadki JavaScript Cookie

W poniższym przykładzie stworzymy cookie do przechowywania nazwy użytkownika.

Po pierwsze, osoby odwiedzające stronę internetową, zostanie poproszony o wypełnienie w ich imieniu. Nazwa zostanie zapisana w pliku cookie.

Następnym razem, gdy dostęp do strony gościa, ujrzy wiadomość powitalną.

W tym przykładzie stworzymy trzy funkcje JavaScript:

  1. Seter wartość cookies
  2. Uzyskaj wartości funkcji cookies
  3. Funkcja wykrywa wartość cookie

Seter wartość cookies

Po pierwsze, możemy utworzyć funkcję do przechowywania nazwy odwiedzającego:

function setCookie(cname,cvalue,exdays)
{
var d = new Date();
d.setTime(d.getTime()+(exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

Rozdzielczość Funkcja:

Ponad parametry funkcji, nazwa pliku cookie dla CNAME wartość cookies cvalue i ustaw upłynie czas ważności cookie.

Funkcja ta ustawia nazwę pliku cookie, wartość cookie, czas ważności pliku cookie.


Uzyskaj wartości funkcji cookies

Następnie tworzymy funkcję, która zwraca użytkownikowi określić wartość cookie:

function getCookie(cname)
{
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++)
  {
  var c = ca[i].trim();
  if (c.indexOf(name)==0) return c.substring(name.length,c.length);
  }
return "";
}

Rozdzielczość Funkcja:

Nazwa Parametry Cookie to CNAME.

Tworzenie zmiennej tekstowej jest używany do pobierania określonego ciasteczko: uÅsÄw + "=".

Użyj oddzielając ciąg document.cookie i przypisać do tablicy ciągów podzielonej CA (ca = document.cookie.split ( ';')).

Tablica ca cyklu (i = 0; i <ca.length; i ++), a następnie odczytuje każdą wartość w tablicy i usuwanie spacji (C = ca [i] .trim ()).

Jeśli okaże cookie (c.indexOf (nazwa) == 0) zwraca wartość cookies (c.substring (name.length, c.length).

Jeśli nie znajdzie cookie, powraca "."


Funkcja wykrywa wartość cookie

Wreszcie, możemy utworzyć funkcję, aby wykryć, czy plik cookie jest tworzony.

Jeśli ustawisz cookie, wyświetli się komunikat powitania.

Jeśli nie ustawić cookie, wyświetli pop za zainteresowanie imię odwiedzającego i wywołać funkcję Nazwa setCookie przechowywania odwiedzającego 365 dni:

function checkCookie()
{
var username=getCookie("username");
if (username!="")
  {
  alert("Welcome again " + username);
  }
else
  {
  username = prompt("Please enter your name:","");
  if (username!="" && username!=null)
    {
    setCookie("username",username,365);
    }
  }
}


Kompletny przykład

Przykłady

function setCookie(cname,cvalue,exdays)
{
var d = new Date();
d.setTime(d.getTime()+(exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}

function getCookie(cname)
{
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++)
  {
  var c = ca[i].trim();
  if (c.indexOf(name)==0) return c.substring(name.length,c.length);
}
return "";
}

function checkCookie()
{
var user=getCookie("username");
if (user!="")
  {
  alert("Welcome again " + user);
  }
else
  {
  user = prompt("Please enter your name:","");
  if (user!="" && user!=null)
    {
    setCookie("username",user,365);
    }
  }
}

Spróbuj »

Poniższe przykłady wykonywania funkcji checkCookie () po załadowaniu strony.