Les cookies, que nous devons à Netscape, nous permettent de stocker des informations sur la machine du visiteur. Ces informations permettent le réglage de nombreuses options de personnalisation du site, en fonction des choix du visiteur, afin de lui éviter de régler ces options à chaque visite, ou pire, à chaque page.
Le cookie ne peut contenir que ce que l'utilisateur a bien voulu donner comme information, il ne pourra jamais récupérer les informations à l'insu du visiteur.
Quelques exemples d'utilisations de cookies :
Le langage JavaScript nous permet de manipuler ces cookies... Le type d'informations à stocker n'a aucune influence sur le code. Un cookie est donc un simple fichier de texte qui contient une chaîne de caractères reprenant les informations concaténées.
Nous pouvons regarder la fonction setCookie (qui permet de créer un cookie) pour avoir une idée des différentes parties d'un cookie.
}
Un cookie doit posséder un nom. Ce nom est obligatoire car il est la clé qui permet d'accéder à une valeur alphanumérique. Normalement les noms sont insensibles à la casse[1].
Le nom ne peut contenir certains caractères (comme le point-virgule, la virgule, l'espace). Si nous désirons utiliser ces caractères (ce qui ne me semble d'aucune utilité) nous devons utiliser l'encodage des URL par l'appel à la fonction JavaScript escape.
Partie du code :
Nous pouvons spécifier une date de validité du cookie avec l'attribut expires. Après cette date, le cookie est détruit. Si nous ne spécifions aucune date, le cookie n'existera plus quand la session de l'utilisateur sera terminée (par exemple quand le navigateur sera fermé).
La valeur est une date sous le format Wdy, DD-Mon-YYYY HH:MM:SS GMT avec
Partie du code :
"; expires="+expires.toGMTString()
Exemple de code :
document.cookie="email=edward@feigenbaum.info; expires=Thu, 09-Feb-2012 20:59:25 GMT";
Nous pouvons aussi calculer une durée en JavaScript :
//durée de vie de 365 jours date_exp.setTime(date_exp.getTime()+(365*24*3600*1000)); document.cookie="user=Steve Jobs; expires="+date_exp.toGMTString();
Nous ne spécifierons pratiquement jamais le domaine du cookie. Si il n'est pas renseigné, le nom du serveur sera automatiquement utilisé.
Nous pouvons définir la portée du cookie avac l'attribut path, pour spécifier que le cookie ne s'applique que pour un sous-répertoire ou un fichier.
L'attribut secure nous permet de déterminer le type de connexion : normale ou chiffrée. Si l'option secure est activée, le navigateur ne pourra utiliser le cookie que si la connexion est en SSL ou S-HTTP.
La spécification prévoit un numéro de version pour les cookies, mais cette information est rarement présente.
Le numéro de version peut avoir une grande importance dans le cas oû nous avons défini une date d'expiration qui n'est pas encore atteinte et que nous désirons invalider ou modifier certaines valeurs. Si le numéro de version n'est pas présent, la seule manière de procéder est d'attribuer un nouveau nom au cookie (mais dans ce cas, l'ancien cookie sera toujours présent, ce qui peut poser problème car il existe une limite au nombre de cookies qu'un navigateur accepte par site).
Selon la spécification, les navigateurs devraient être capables de supporter au moins 300 cookies, un poids minimum de 4Ko par cookie, et un total minimum de 20 cookies par site ou domaine.
Voici quelques cookies générés par ce site :
Pour les cookies du menu (ceux dont le nom débute par br...), la valeur 1 signifie que la valeur est opposée à la valeur par défaut.
} //Lecture d'un cookie //retourne une chaine vide si le cookie n'existe pas while (i<=cookie_doc.length){ cookie_debut=i; cookie_fin=cookie_debut+nameCookie.length; break; } i++; } if (cookie_existe){ cookie_debut=cookie_fin+1; cookie_fin=document.cookie.indexOf(";",cookie_debut); if(cookie_fin<cookie_debut){ cookie_fin=document.cookie.length; } return document.cookie.substring(cookie_debut,cookie_fin); } return ""; }
document.write(getCookie('msg'));
Ce tableau permet d'avoir un premier aperçu des différents endroits de stockage des cookies, mais la localisation des cookies varie selon la configuration du système d'exploitation et la version du navigateur.
| Navigateur | Version | Système d'exploitation | # | Localisation |
| Légende U=fichier unique; M=fichiers multiples (un par serveur) Windows 9x=Windows 95+Windows 98+Windows ME | ||||
| Opera | U | cookiesX.dat Exemple : C:\Program Files\Opera\cookies4.dat | ||
| Netscape | U | cookie.txt Exemple : C:\Program Files\Netscape\Users\Nomsite\cookies.txt | ||
| Netscape | Linux | U | cookie.txt ∼/.netscape/cookies.txt | |
| Netscape | 4 | Windows 9x | U | cookie.txt %programfiles%\Netscape\Users\default\cookies.txt %programfiles% correspondant le plus souvent à C:\Program Files |
| Netscape | 7 | Windows 2000/Xp | U | cookie.txt %HOMEPATH%\Application Data\Mozilla\Profiles\ %HOMEPATH% correspondant le plus souvent à C:\Documents and Settings |
| Internet Explorer | 1.5 | Windows NT | M | %SystemRoot%\cookie.jar %SystemRoot% correspondant le plus souvent à C:\WINNT |
| Internet Explorer | 2.0 | Windows toutes versions | M | %programfiles%\Plus!\Microsoft Internet\cookie.jar |
| Internet Explorer | 3.0 | Windows NT 3.51 | M | emcookie.dat dans le répertoire d'installation de IE. |
| Internet Explorer | 3.0 | Windows NT4 | M | %SystemRoot%\Cookies\%USERNAME%@ Exemple : C:\Windows\Cookies\joseph_weizenbaum@infobrol.txt |
| Internet Explorer | 3.0 | Windows 9x | M | %WinDir%\Cookies\%USERNAME%@ Exemple : C:\Windows\Cookies\joseph_weizenbaum@infobrol.txt |
| Internet Explorer | >4 | Windows NT4 | M | %SystemRoot%\profiles\%USERNAME%\Cookies\%USERNAME%@ Exemple : C:\Windows\Cookies\joseph_weizenbaum@infobrol.txt |
| Internet Explorer | >4 | Windows 9x | M | %WinDir%\Cookies\%USERNAME%@ Exemple : C:\Windows\Cookies\joseph_weizenbaum@infobrol.txt |
| Internet Explorer | >4 | Windows 2000/Xp | M | %USERPROFILE%\Cookies\%USERNAME%@ Exemple : C:\Users\joseph_weizenbaum\Cookies\joseph_weizenbaum@infobrol.txt |
Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.
10 mots clés dont 0 définis manuellement (plus d'information...).
Avertissement
Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.
Recherche (afficher)
Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
Citation (masquer)