cookies são pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles...

11
Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para se criar um cookie criamos um objeto da classe Cookie : Sintaxe : Cookie nomeCookie = new Cookie(“nomeCampo”,”valorCampo”);

Upload: internet

Post on 17-Apr-2015

104 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

Cookies

• São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis.

• Para se criar um cookie criamos um objeto da classe Cookie :

• Sintaxe : Cookie nomeCookie = new Cookie(“nomeCampo”,”valorCampo”);

Page 2: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• Podemos enviar dados para esse cookie criado através dos seguintes métodos :

• setValue() = atribui um novo valor para o objeto criado;

• setDomain() = define o servidor ou o domínio pelo qual o cookie pode ser acessado;

• setMaxAge(int) = define o tempo de vida em segundos do cookie;

Page 3: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• Para gravar este objeto em definitivo, utilizamos o método da subclasse response, chamado addCookie, que enviará o objeto para a máquina do cliente, gravando-o como um cookie.

• Sintaxe =

response.addCookie(nomeCookie);

Page 4: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• Para se recuperar este cookie, utilizamos o método chamado getCookies, da subclasse request. Ele criará um array com todos os cookies que foram gravados na máquina do usuário e então basta um simples comando FOR para varrermos este array e localizarmos o nosso :

• Ex: Cookie[] meusCookies = request.getCookies();for (int i=0;i<meusCookies.lenght;i++) if(meusCookies[i].getName().equals(“nomeCampo”)) //achei meu cookie

Page 5: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

Exemplos

• Cookie1.htm ou index.jsp<html><body><form action=“cookie2.jsp” method =“post”> Informe seu Nome:<Input name=edNome> <br> <Input type=“submit” value=“Enviar”></form></body></html>

Cookie2.jsp<html><body><% Cookie nomeCok=new Cookie(“nome”,request.getParameter(“edNome”)); response.addCookie(nomeCok);%><form action=“cookie3.jsp” method =“post”><Input type=“submit” value=“Enviar”></form></body></html>

Page 6: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

Cookie3.jsp

<html><body><% Cookie acheiCookie = null; Cookie[] meusCookies=request.getCookies(); for(int i=0;i<meusCookies.length;i++) if (meusCookies[i].getName().equals(“nome”)) acheiCookie=meusCookies[i]; if (acheiCookie==null) out.println(“Cookie não localizado !”); else out.println(“Cookie encontrado. Seu nome é “+acheiCookie.getValue());%></body></html>

Page 7: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

Sessões

• As sessões não são gravadas no computador do cliente e também não precisamos localizá-las como é o caso dos cookies. Alguns comandos básicos de sessões :

• Para gravar uma sessão utilizamos :• Session.putValue(“nomeSessao”,”valorSessao”)

;• Para recuperarmos o valor que gravamos nela,

utilizamos :• tipoCampo nomeVariavel =

(tipoCampo)session.getValue(“nomeSessao”);

Page 8: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• Além desses métodos , existem mais dois bem interessantes :

• invalidate() = serve para destruir todas as sessões criadas;

• setMaxInactiveInterval(segs) = elimina a sessão caso o cliente a mantenha inativa durante um número x de segundos.

• Vamos a um exemplo, criaremos primeiro uma página chamada Sessao.htm, ou jsp, como preferir :

Page 9: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• <html>• <body>• <form action = sessao2.jsp” method = “post”>• Informe seu nome : <input name=edtNome>• <br><br>• <input type=“submit” value=“enviar”>• </form>• </body>• </html>

Page 10: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

Sessao2.jsp

<html><body><% session.putValue(“nome”,request.getParameter(“edtNome”));%>//sessao gravada<input type=button

onClick=“JavaScript:window.location.href=‘sessao3.jsp’”value =“proxima”></body></html>

Com o parâmetro que nos foi enviado pelo formulário, criaremos uma nova sessão chamada nome, contendo esse valor. Será mostrada uma msg sessão gravada e um botao proxima, que ao ser clicado, utilizará comandos javaScript que chamarão a pagina sessao3.jsp.

Page 11: Cookies São pequenos arquivos de texto que ficam gravados na máquina do cliente, e através deles é possível guardar valores de algumas variáveis. Para

• Sessao3.jsp

<html><body><% String acheiSessao=(String)session.getValue(‘nome”); if (acheiSessao==null) out.println(“Sessao não localizada”); else out.println(“Sessao encontrada. Seu nome é + acheiSessao);%></body></html>

Nesta página localizamos a sessão gravada, e quando a encontramos mostramos seu conteudo.Já sabemos então os modos de transmitir informações de uma página para outra , sendo que as

sessões ocupam espaço na memória do webserver, e cookies na maquina do usuário. Os cookies não podem exceder o tamanho de 4kb, são limitados em 300 caracteres e o maior problema deles é que o cliente tem que definir seu browser para aceitar recebê-los.