Latest web development tutorials

Ruby CGI Cookies

le protocole HTTP est un protocole sans état. Mais pour un site Web d'entreprise, il a besoin de garder des informations de session entre les différentes pages.

Si le processus d'inscription sur le site de l'utilisateur a besoin de saut de page, mais que vous voulez faire en sorte que l'information ne soit pas perdu avant le remplissage.

Dans ce cas, Cookie bon pour nous aider à résoudre le problème.


Cookie Comment ça marche?

Presque tous les concepteurs de sites Web lors de la conception du site utilisent le Cookie, parce qu'ils veulent donner à l'utilisateur la navigation sur le site afin d'offrir un environnement plus convivial, humain culture navigation, mais aussi de recueillir plus précisément informations touristiques.

L'écriture et la lecture

Cookies fixés appartient à la collection d'objets de données et objet Demande de réponse, vous devez précéder l'utilisation de la demande ou de réponse.

La syntaxe pour le client d'envoyer les cookies habituellement:

Lorsqu'il est réglé sur un non-existants paramètres des cookies seront créés sur le client, si les cookies existent déjà, il sera remplacé. Puisque les cookies sont envoyés dans le cadre du transport HTTP les informations d'en-tête d'un client, il est envoyé aux cookies de code client habituellement placé avant la balise envoyé au fichier HTML du navigateur.

Cookies Si vous voulez lire, vous devez utiliser la collection Cookies de l'objet Request, son utilisation est: Notez que, non seulement dans le serveur avant de télécharger des données vers le navigateur, le navigateur et le serveur pour échanger la collecte des cookies de données Une fois que le navigateur commence à recevoir les données du serveur téléchargé, l'échange de données cookies est arrêté, afin d'éviter les erreurs, d'ajouter Response.Buffer = True dans le programme précédent.

collection d'attributs

  • 1.Expires attribut: Cet attribut est utilisé pour les cookies d' un délai dans le délai aussi longtemps que la page web ouverte peut appeler Cookies sauvé, Cookies Si après cette période sera automatiquement supprimé. Tels que: la mise en Cookies est valable jusqu'au 1er Avril 2004, quand il sera automatiquement supprimé. Si les cookies ne sont pas fixer une période de validité, son cycle de vie dès le début pour ouvrir le navigateur, fermez le navigateur à la fin du cycle de vie se terminera après chaque course, la prochaine course va commencer à nouveau.
  • attribut 2.Domain: Cet attribut définit le caractère unique de cookies transmission de données. Si seulement lors du transfert de certains témoins pour _blank "> page d'accueil Sohu, vous pouvez utiliser le code suivant:
  • propriété 3.Path: Définit les cookies sont émis uniquement à la demande de chemin d' accès spécifié, si la propriété Path est pas définie, les applications de chemin par défaut.
  • attribut 4.Secure: Indique les cookies peuvent être lus par les utilisateurs.
  • 5, nom = valeur: Les cookies sont des paires clé-valeur pour définir et récupérer.

Ruby Cookies de traitement

Vous pouvez créer un objet appelé cookie et stocker des messages texte, envoyer les informations au navigateur, appelez CGI.out mis en-tête de 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

Ensuite, nous allons revenir sur cette page, et nous cherchons des valeurs de cookie comme suit:

#!/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

objet CGI :: Cookie contient une instance des paramètres suivants:

Paramètres description
nom Il spécifie le nom du cookie.
valeur La valeur prédéterminée du cookie.
expirer Les dispositions du cookie.
chemin Provisions cookie chemin du serveur.
domaine Les dispositions du domaine de cookie.
assurer Indique si les connexions à transférer cookies sur un HTTPS sécurisé.