[ Pobierz całość w formacie PDF ]
.Tworzenie cookiesCookies tworzy się wywołujšc konstruktor klasy Cookie.Konstruktor ten wymagapodania dwóch argumentów —łańcuchów znaków okreœlajšcych odpowiednio nazwę orazwartoœć tworzonego cookie.Ani nazwa, ani wartoœć cookie nie może zawieraćodstępów ani poniższych znaków:[ ] ( ) = , " / ? @ : ;Atrybuty cookiesZanim dodasz cookie do nagłówków odpowiedzi, możesz podać jego różne cechy.Służš do tego metody setXxx, gdzie Xxx to nazwa atrybutu którego wartoœć chceszokreœlić.Każdej z metod setXxx odpowiada metoda getXxx służšca do pobieraniawartoœci odpowiedniego atrybutu.Za wyjštkiem nazwy i wartoœci, wszystkieatrybuty dotyczš wyłšcznie cookies przekazywanych z serwera do przeglšdarki;atrybuty te nie sš okreœlane dla cookies przesyłanych w przeciwnym kierunku.Skróconš wersję przedstawionych poniżej informacji znajdziesz także w dodatku A— „Krótki przewodnik po serwletach i JSP”.public String getComment()public void String setComment(String komentarz)Pierwsza z tych metod pobiera, a druga okreœla komentarz skojarzony z danymcookie.W przypadku cookies działajšcych według pierwszej wersji protokołuopracowanego przez firmę Netscape (protokół ten na numer wersji 0, patrz opismetod getVersion oraz setVersion podany w dalszej częœci rozdziału) komentarzten jest używany wyłšcznie na serwerze i wyłšcznie w celach informacyjnych; niejest on przesyłany do przeglšdarki.public String getDomain()public void setDomain(String wzorzecDomeny)Pierwsza z tych metod pobiera, a druga okreœla domenę której dotyczy danecookie.Zazwyczaj przeglšdarka zwraca cookies wyłšcznie do komputera, któregonazwa œciœle odpowiada nazwie komputera z którego cookies zostały wysłane.Metody setDomain można użyć, aby poinstruować przeglšdarkę, że cookies możnatakże przekazywać do innych komputerów należšcych do tej samej domeny.Abyuniemożliwić tworzenie cookies, które będš przesyłane do komputera należšcegodo innej domeny niż ta, do której należy komputer który stworzył cookie, nazwadomeny podawana w metodzie setDomain musi zaczynać się od kropki „.” (naprzykład:.prenhall.com), a dodatkowo musi zawierać dwie kropki w przypadkudomen, które nie okreœlajš kraju (np.:.com,.edu lub.gov) i trzy kropki wprzypadku gdy domena zawiera okreœlenie kraju (np.:.edu.pl,.gov.pl, itp.).Naprzykład, cookies zdefiniowane przez serwer bali.vacations.com nie będšzazwyczaj przesyłane przez przeglšdarkę do stron należšcych do domenymexico.vacations.com.Gdyby jednak witryna tworzšca cookies chciała aby takieprzesyłanie cookies było możliwe, to serwlet powinien posłużyć się wywołaniem opostaci cookie.setDomain(".vacations.com").public int getMaxAge()public void setMaxAge(int długoœćIstnienia)Pierwsza z tych metod zwraca a druga okreœla czas (wyrażony w sekundach) poupłynięciu którego cookie zostanie uznane za przestarzałe.Atrybut tendomyœlnie posiada wartoœć ujemnš, która oznacza, że cookie będzie przechowywanewyłšcznie do końca bieżšcej sesji przeglšdarki (czyli do momentu gdy użytkownikjš zamknie) i nie będzie zapisywane na dysku.Na listingu 8.4 przedstawiłemklasę LongLivedCookie (klasę potomnš klasy Cookie), definiujšcš cookie, któregoczas istnienia jest automatycznie okreœlany na jeden rok.Podanie wartoœci 0 wwywołaniu metody setMaxAge informuje przeglšdarkę, że należy usunšć cookie.public String getName()public void setName(String nazwaCookie)Pierwsza z tych metod zwraca a druga okreœla nazwę cookie.Nazwa oraz wartoœć,sš dwoma elementami cookies na które zawsze trzeba zwracać uwagę.Niemniejjednak metoda setName jest stosowana rzadko, gdyż nazwa jest podawana wwywołaniu konstruktora, podczas tworzenia cookie.Z drugiej strony metodagetName jest używana niezwykle często, gdyż za jej pomocš pobieramy nazwyniemal wszystkich cookies przekazywanych z przeglšdarki na serwer.Ponieważmetoda getCookies interfejsu HttpServletRequest zwraca tablicę obiektów Cookie,dlatego często stosowanym rozwišzaniem jest pobieranie po kolei nazw wszystkichcookies przechowywanych w tej tablicy, aż do momentu odszukania tego, które nasinteresuje.Proces pobierania wartoœci cookie o okreœlonej nazwie zostałzaimplementowany w metodzie getCookieValue przedstawionej na listingu 8.3.public String getPath()public void setPath(String œcieżka)Pierwsza z tych metod zwraca a druga okreœla œcieżkę z jakš jest skojarzonecookie.Jeœli żadna œcieżka nie zostanie podana, to przeglšdarka będzieumieszczać cookie wyłšcznie w żšdaniach dotyczšcych stron znajdujšcych się wtym samym katalogu serwera, w którym znajdowała się strona która utworzyłacookie, bšdŸ w jego podkatalogach.Na przykład, jeœli serwer przesłał cookiepodczas obsługi żšdania dotyczšcego stronyhttp://witryna.handlowa.com/zabawki/zb.html to przeglšdarka przeœle cookie zpowrotem wraz z żšdaniem dotyczšcym stronyhttp://witryna.handlowa.com/zabawki/rowery/dladzieci.html, lecz nie z żšdaniemdotyczšcym strony http://witryna.handlowa.com/cd/klasyka.html.Metoda setPathmoże służyć do okreœlenia bardziej ogólnych warunków zwracania cookies.Naprzykład, wywołanie postaci jakiesCookie.setPath("/") informuje, że to cookiepowinno być przesyłane do wszystkich stron na danym serwerze.Œcieżka podawanaw wywołaniu tej metody musi zawierać aktualnš stronę.Oznacza to, że możnapodać œcieżkę bardziej ogólnš niż œcieżka domyœlna; nie można natomiast podawaćœcieżek bardziej szczegółowych.Na przykład, serwlet o œcieżce dostępuhttp://witryna/sklep/obsluga/zadanie może podać œcieżkę /sklep (gdyż œcieżka tazawiera w sobie œcieżkę /sklep/obsluga/), lecz nie może użyć œcieżki/sklep/obsluga/zwroty/ (gdyż nie zawiera ona w sobie œcieżki /sklep/obsluga/) [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • listy-do-eda.opx.pl