English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O protocolo HTTP é um protocolo sem estado. Mas para um site comercial, ele precisa manter informações de sessão entre diferentes páginas.
Se o usuário precisar saltar páginas durante o processo de registro no site, mas precisar garantir que as informações preenchidas anteriormente não sejam perdidas.
Neste caso, o Cookie resolveu o problema perfeitamente.
Praticamente todos os designers de sites usam Cookie ao projetar sites, pois desejam oferecer aos usuários uma experiência de navegação mais amigável e humana, além de coletar informações dos visitantes de forma mais precisa.
O conjunto de cookies é uma coleção de dados anexada ao objeto Response e Request, que deve ser precedida por Response ou Request ao usar.
A sintaxe usual para enviar Cookies para o cliente é:
Quando configurar uma coleção de Cookies inexistente, ela será criada no cliente, se o Cookies já existir, ele será substituído. Como os Cookies são enviados como parte das informações de cabeçalho do HTTP para o cliente, o código para enviar Cookies para o cliente geralmente é colocado antes das tags do arquivo HTML enviado ao navegador.
Se o usuário quiser ler os Cookies, ele deve usar a coleção Cookies do objeto Request, sua maneira de usar é: É importante notar que, apenas antes de o servidor não ter baixado nenhum dado para o navegador, o navegador pode trocar dados da coleção Cookies com o Server, assim que o navegador começar a receber os dados baixados pelo Server, a troca de dados de Cookies será encerrada, para evitar erros, você deve adicionar response.Buffer=True no código.
1.Expires atributo:Esta propriedade é usada para definir um prazo para os Cookies, dentro desse prazo, você pode chamar os Cookies salvos ao abrir a página, se passar desse prazo, os Cookies serão excluídos automaticamente. Por exemplo: Definir a validade do Cookie até2004Ano4Mês1Dia, quando estiver na hora, será excluído automaticamente. Se um Cookies não tiver sido configurado com uma data de validade, sua vida útil começará quando o navegador for aberto e terminará quando o navegador for fechado, a vida útil será encerrada após cada execução e começará novamente na próxima execução.
2.Domain atributo:Esta propriedade define a unicidade dos dados transmitidos pelos Cookies. Se você quiser enviar apenas um Cookies para_blank">a página inicial da Sohu, você pode usar o seguinte código:
3.Path atributo:Define que os Cookies sejam enviados apenas para solicitações de caminhos específicos, se o atributo Path não for configurado, ele usará o caminho padrão do software da aplicação.
4.Secure atributo:Especifica se os Cookies podem ser lidos pelo usuário.
5、Name=Value : Os Cookies são configurados e pesquisados em forma de pares de chave=valor.
Você pode criar um objeto chamado cookie e armazenar informações de texto, enviando essas informações para o navegador, chamando CGI.out para configurar o cabeçalho do cookie:
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = CGI::Cookie.new('name' => 'mycookie', 'value' => 'Zara Ali', 'expires' => Time.now + 3600) cgi.out('cookie' => cookie) do cgi.head + cgi.body { "Cookie stored" } end
Agora voltamos para esta página e procuramos o valor do cookie, conforme mostrado:
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = cgi.cookies['mycookie'] cgi.out('cookie' => cookie) do cgi.head + cgi.body { cookie[0] } end
O objeto CGI::Cookie contém os seguintes parâmetros ao ser instanciado:
Parâmetros | Descrição |
---|---|
name | Especifique o nome do cookie. |
value | Especifique o valor do cookie. |
expire | Especifique a validade do cookie. |
path | Especifique o caminho do servidor do cookie. |
domain | Especifique o domínio do cookie. |
secure | Especifique se os cookies devem ser transmitidos através de conexão HTTPS segura. |