jak korzystać cookies w javascript | Blogger Skrypt

Kyani

Translate

jak korzystać cookies w javascript


cookies

Każdym razem, gdy odwiedzamy jakąkolwiek witrynę, pliki cookie mogą być przechowywane do "zapamiętania" rzeczy, które robimy w trakcie przeglądania strony. To może się zdarzyć, na przykład, gdy odwiedzamy gdzie mamy stronę do logowania z nazwą użytkownika i hasłem. W tym przypadku, po sprawdzeniu, że dane do logowania są poprawne, zwykle pliki cookies zapisują je na naszym komputerze.


Przykładem może być popularna strona Google. Ta wyszukiwarka pozwala użytkownikom wybrać jakie wyniki wyszukiwania chcesz zobaczyć na każdej stronie. Dzięki plikom cookie, konfiguracja ta pozostaje bez zmian dla każdego komputera, nawet po ponownym uruchomieniu kilku sesji w przeglądarce.


Pomimo tego, że jest to dobre rozwiązanie, można usunąć je od czasu do czasu, bo choć niektóre wygasną to są usuwane automatycznie po jakimś czasie, niektóre z nich nigdy nie wygasają. Podobnie jak wiele innych rzeczy, ciasteczka mogą okazać się słabe, a co za tym idzie mają złą reputację. Na przykład, niektóre strony mogą przechowywać i badać sposoby przeglądania stron przez użytkownika, bez ich wiedzy.
To dlatego większość przeglądarek używa systemu aby je filtrować i może zdecydować, czy będą one zapewnić trochę prywatności w sieci, czy też nie. Jeśli chcesz zobaczyć na żywo przykład jak działa plik cookie, odwiedź tę stronę i odśwież ją kilka razy. Powinieneś dostać powiadomienie w formie okna z informacją o tym, jak wiele razy odwiedziłeś tą stronę. (źródło skrypt: javascriptkit.com).
Poniżej mamy prosty skrypt, który może być używany tak często chcemy, nawet dla różnych celów. Przede wszystkim, ten skrypt tworzy trzy funkcje: pierwsza to ustawić plik cookie, drugi jest, aby ją przeczytać, a ostatni to aby go usunąć. Można go stosować w Bloggerze, korzystając z szablonu HTML i dodać go tuż przed </ head> tagu:



<script type='text/javascript'>
//<![CDATA[
// Set cookie function setCookie(name, value, expires, path, domain, secure) {
document.cookie = name + "=" + escape(value) +
((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
((path == null) ? "" : "; path=" + path) +
((domain == null) ? "" : "; domain=" + domain) +
((secure == null) ? "" : "; secure");
}
// Read cookie function getCookie(name){
var cname = name + "=";
var dc = document.cookie;
if (dc.length > 0) {
begin = dc.indexOf(cname);
if (begin != -1) {
begin += cname.length;
end = dc.indexOf(";", begin);
if (end == -1) end = dc.length;
return unescape(dc.substring(begin, end));
}
}
return null;
}
//delete cookie function eraseCookie (name,path,domain) {
if (getCookie(name)) {
document.cookie = name + "=" +
((path == null) ? "" : "; path=" + path) +
((domain == null) ? "" : "; domain=" + domain) +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}
//]]>
</script>


Gdy to zrobisz, wypadałoby ustawić ciasteczko, musimy tylko umieścić nazwę i wartość w cudzysłowie, gdy wywołujemy funkcję. Dodatkowo, będziemy ustawić datę wygaśnięcia poprzez uzyskanie aktualnego czasu (w milisekundach) i dodać wymaganą liczbę minut (w milisekundach):


 var expiration = new Date();
expiration.setTime(expiration.getTime() + 10000); //Expire after 10 seconds setCookie("cookiename","hello",expiration);
}


Powyższy kod ustawia plik cookie o nazwie cookiename, z wartością hello i ustawić aktualną datę ważności do 10 sekund po jego ustawienia (10000 milisekund = 10 sekund). Jeśli chcemy, aby przywrócić wartości tego pliku cookie, to powinniśmy użyć drugiej funkcji z nazwy ciasteczka:


var checkCookie = getCookie("cookiename");


Poprzez dodanie tego kodu poniżej wiersza <body>, stworzyliśmy ciasteczko z wartości 'hello', które może być wyświetlane na ekranie, jeśli chcemy. Zniknie po 10 sekundach.


<script type='text/javascript'>
var expiration = new Date();
expiration.setTime(expiration.getTime() + 10000);
setCookie("cookiename","hello",expiration);
var checkCookie = getCookie("cookiename");
document.write(checkCookie);
</script>


Funkcja usuwania jest wykorzystywana w taki sam sposób, jak ta do czytania poprzez kliknięcie na nazwę pliku cookie. Wartości SetCookie dla "domeny" i "bezpieczne" nie są wykorzystywane. Użyj "domeny" na ciasteczka Javascript jeśli używasz go na subdomenie, gdzie plik cookie jest ustawiony w subdomenie widgetów, lecz trzeba, go udostępnić w całej domenie twoja_strona.com.


Połączenie tych trzech funkcji pozwoli nam obsługiwać pliki cookie dla określonych celów, zobaczymy jak  w niedalekiej przyszłości.


Brak komentarzy:

Prześlij komentarz