Home       Pesquisar       Contacto       Guestbook       Links Úteis       Webmaster

 
 
 

 

 

 

 

Valid XHTML 1.0 Transitional

Aumentar o tamanho do texto   Diminuir o tamanho do texto

∞ Noções Avançadas e Tecnologias Relacionadas ∞

Cookies

Um dos principais problemas que existiu como obstáculo à criação de aplicações mais complexas na World Wide Web foi a dificuldade em registar e manter o contexto de uma determinada situação.

Se se pretender fazer depender o carregamento de uma determinada página de alguma resposta anterior do utilizador, por exemplo, uma validação de acesso a qualquer aplicação, o servidor Web não tem nenhuma informação acerca das acções prévias deste, uma vez que cada carregamento de uma página é considerado como uma transacção independente.

Para contornar este problema, podem ser construídos programas server side, CGI, ou ASP's, que guardem informação acerca do contexto da comunicação com um utilizador e mantenham o controlo das acções deste com base nessa informação.

No entanto, existe uma forma muito mais natural de realizar este tipo de operações, utilizando os cookies. Um cookies é uma forma de armazenar informação localmente ao browser, relativa ao estado da comunicação entre o cliente e o servidor.

Os cookies podem ser importantes nas seguintes situações:

  • Quando é questionado o nome de um utilizador e essa informação é guardada num cookie que pode ser utilizado noutras páginas instaladas no mesmo servidor.
  • Efectuar um questionário ao utilizador e só depois permitir o acesso a uma determinada página Web, guardando a informação de que o utilizador tem acesso, num cookie.

 

Os valores dos cookies são guardados nobrowser do cliente e podem ser acedidos via propriedade cookie, do objecto JavaScript document. Um cookie é, normalmente, constituído por uma string de texto com a seguinte sintaxe:

Set-Cookie: propriedade1 = valor1; propriedade 2 = valor2; ...;

As propriedades que constituem um cookie são as seguintes:

 

Propriedades

name
     Este parâmetro contém a informação a ser armazenada no cookie. Trata-se de uma string, sem espaços nem os caracteres vírgula (,) ou ponto e vírgula (;).

expires
     A data em que o cookie expira. Se for ultrapassada, o cookie não será mais utilizado. O formato a utilizar é do tipo exemplificado na expressão: expires>Sat,22-09-01 22:30:00.

path
     Especifica o caminho (componente do URL) para o qual o cookie é válido.

domain
     Especifica o domínio (componente do URL) em que o cookie é válido.

secure
     Se especificado este parametro, o cookie só será transmitido se for utilizada uma "transacção segura" – HTTPS.

Com o JavaScript um cookie pode facilmente ser criado e utilizado, com a propriedade document.cookie de um determinado documento HTML.

Vejamos um exemplo de um conjunto de duas páginas HTML, em que a segunda página ainda se recorda do nome do utilizador, que foi guardado num cookie da primeira.

 

Pag1.html

<html>
<head>
<title> Página 1 – teste cookie </title>

<script language="Javascript" type="text/javascript">
   var nome = prompt("Qual o seu nome?");
   document.cookie = nome;
</script>

</head>

<body>
   <a href = "Pag2.html"> Página seguinte </a>
</body>

</html>

 

Pag2.html

<html>
<head>
<title> Página 2 – teste cookie </title>

<script language="Javascript" type="text/javascript">
   var i = document.cookie.indexOf("=");
   var nome = document.cookie.substring(i+1, document.cookie.length);
   document.write("olá", nome, "como está hoje? <br />");
</script>

<body>
   <a href = "Pag1.html"> Página anterior </a>
</body>

</html>

 

               

 

 

Ao ser acedida a primeira página, o utilizador é interrogado pelo seu nome e o valor é guardado no Cookie.

Esse valor fica disponível para a segunda página o consultar quando for acedida.

Repare-se que as duas páginas não têm, em teoria, nada a ver uma com a outra, para além de estarem ligadas por links, pelo que o Cookie é o único factor de comunicação entre as duas.

Nos cookies pode haver a necessidade de guardar strings mais complexas, contendo espaços ou outros caracteres inválidos.

É recomendável que se utilizem métodos de codificação dos caracteres proibidos, por exemplo, caracteres "%" ou "?", para representar os espaços, utilizando para tal funções que existem no JavaScript, tais como o escape() e o unescape(), que permitem codificar e descodificar uma string para transmissão através de um cookie.

 

 

     Página 1   Página 2   Página 3   Página 4   Página 5   Página 6   Página 7   Página 8  

 
 


© 2007 - 2010 - Miguel Moreira | Todos os direitos reservados