Maison >interface Web >js tutoriel >JavaScript implémente des fonctions d'écriture, de lecture et de suppression de cookies_compétences Javascript

JavaScript implémente des fonctions d'écriture, de lecture et de suppression de cookies_compétences Javascript

WBOY
WBOYoriginal
2016-05-16 15:33:471173parcourir

Avant d'introduire le texte principal, permettez-moi d'abord de vous présenter les connaissances de base de Cookie

Comprenez d'abord ce que sont les cookies

 "Un cookie est une variable stockée sur l'ordinateur du visiteur. Ce cookie est envoyé chaque fois que le même ordinateur demande une page via un navigateur. Vous pouvez utiliser JavaScript pour créer et récupérer la valeur du cookie."

Un cookie est un fichier créé par un site Web visité pour stocker des informations de navigation, telles que des informations de profil.

Du point de vue JavaScript, les cookies sont des informations sous forme de chaîne. Ces informations sont stockées sur l'ordinateur du client et sont utilisées pour transférer des informations entre l'ordinateur client et le serveur.

 Ces informations peuvent être lues ou définies via document.cookie en JavaScript. Étant donné que les cookies sont principalement utilisés pour la communication entre le client et le serveur, outre JavaScript, les langages côté serveur (tels que PHP) peuvent également accéder aux cookies.

Bases des cookies

Les cookies ont une taille limite. Les données stockées dans chaque cookie ne peuvent pas dépasser 4 Ko. Si la longueur de la chaîne du cookie dépasse 4 Ko, cet attribut renverra une chaîne vide.

Étant donné que les cookies sont finalement stockés dans l'ordinateur client sous forme de fichiers, il est très pratique de visualiser et de modifier les cookies. C'est pourquoi on dit souvent que les cookies ne peuvent pas stocker d'informations importantes.

Le format de chaque cookie est le suivant : b6595f9433ba70b4aed8f4a42365c43b=f9482282c4721b471ae3bda276838dca ; le nom et la valeur doivent être des identifiants légaux.

Les cookies ont une date d'expiration. Par défaut, le cycle de vie d'un cookie se termine à la fermeture du navigateur. Si vous souhaitez que le cookie soit utilisable après la fermeture du navigateur, vous devez définir une période de validité pour le cookie, qui correspond à la date d'expiration du cookie.

Le résultat de alert(typeof document.cookie) est une chaîne. Un jour, j'ai pensé que c'était un tableau, et j'ai même fait une blague...囧


Les cookies ont la notion de domaine et de chemin. Le domaine est le concept de domaine Étant donné que le navigateur est un environnement de sécurité, différents domaines ne peuvent pas accéder aux cookies les uns des autres (bien entendu, l'accès entre domaines aux cookies peut être obtenu via des paramètres spéciaux). Le chemin est le concept de routage. Un cookie créé par une page Web n'est accessible que par toutes les pages Web du même répertoire ou sous-répertoire que cette page Web, mais n'est pas accessible par les pages Web d'autres répertoires (cette phrase est un peu déroutante, je vais regarder). nous y reviendrons plus tard) C’est plus facile à comprendre avec un exemple).


En fait, la manière de créer des cookies est quelque peu similaire à la manière de définir des variables. Les deux nécessitent l'utilisation de noms de cookies et de valeurs de cookies. Le même site Web peut créer plusieurs cookies, et plusieurs cookies peuvent être stockés dans le même fichier de cookies.

FAQ sur les cookies

Il existe deux types de cookies :

Cookies définis par le site Web actuel que vous parcourez

Cookies tiers provenant d'autres sources de domaine telles que des publicités intégrées ou des images sur des pages Web (les sites Web peuvent suivre vos informations d'utilisation en utilisant ces cookies)

Les connaissances de base viennent d'évoquer la question du cycle de vie des cookies. En fait, les cookies peuvent être grossièrement divisés en deux états :

Cookies temporaires. Le site Web stockera certaines de vos informations personnelles lors de son utilisation actuelle, et ces informations seront également supprimées de votre ordinateur à la fermeture du navigateur

Définissez le cookie avec un délai d'expiration. Même si le navigateur est fermé, ces informations seront toujours présentes sur l'ordinateur. Tels que le nom de connexion et le mot de passe, vous n'avez donc pas besoin de vous connecter à chaque fois que vous accédez à un site spécifique. Ces cookies peuvent rester sur votre ordinateur pendant des jours, des mois, voire des années.

Il existe deux manières d'effacer les cookies :

Effacer les cookies via les outils du navigateur (il existe des outils tiers, et le navigateur lui-même a également cette fonction)

Effacez les cookies en définissant leur date d'expiration

Remarque : La suppression des cookies peut parfois entraîner un dysfonctionnement de certaines pages Web

Les navigateurs peuvent être configurés pour accepter et refuser l'accès aux cookies.

Pour des raisons de fonctionnalité et de performances, il est recommandé de réduire le nombre de cookies utilisés et d'essayer d'utiliser autant que possible des petits cookies.

Les détails de l'encodage des cookies seront introduits séparément dans le chapitre sur les cookies avancés.

S'il s'agit d'une page sur le disque local, la console Chrome ne peut pas utiliser JavaScript pour lire et écrire des cookies. La solution... changer de navigateur^_^.

Ce chapitre partage quelques paragraphes sur les opérations simples de JavaScript sur les cookies, telles que l'écriture et la suppression de cookies.


Le code est très simple et convient mieux à la référence par des amis qui ne sont pas familiers avec les opérations de base des cookies.


1. Écrire un cookie :

//两个参数,一个是cookie的名子,一个是值
function SetCookie(name,value){
 var Days = 30;//此 cookie 将被保存 30 天
 var exp = new Date();//new Date("December 31, 9998");
 exp.setTime(exp.getTime() + Days*24*60*60*1000);
 document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}

2. Lire les cookies :

//取cookies函数  
function getCookie(name){
 var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
 if (arr != null) return unescape(arr[2]); return null;
}

3. Supprimer les cookies :

//删除cookie
function delCookie(name){
 var exp = new Date();
 exp.setTime(exp.getTime() - 1);
 var cval = getCookie(name);
 if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn