Red de conocimiento informático - Material del sitio web - Cómo utilizar js para operar cookies para implementar la función de recordar contraseña

Cómo utilizar js para operar cookies para implementar la función de recordar contraseña

Qué son las cookies

“Una cookie es una variable que se almacena en la computadora de un visitante. Esta cookie se envía cada vez que la misma computadora solicita una página a través de un navegador. JavaScript para crear y recuperar valores de cookies”

Diferentes navegadores pueden almacenar cookies de manera diferente, pero lo mismo es que el contenido de la cookie se almacena en el lado del cliente. (La sesión se guarda en el servidor)

Algunas notas sobre las cookies

Para decirlo más simplemente, una cookie es una cadena (puede usar alert(typeof document.cookie) para this) para verificar), se utiliza para guardar cierta información del cliente.

Los programadores pueden escribir lo que quieran, siempre y cuando no exceda el límite de tamaño de la cookie (4kb).

La forma más sencilla de operar las cookies es operar document.cookie (escriba el contenido que desea guardar).

La cookie tiene una palabra clave que caduca, que se utiliza para establecer el período de validez de la cookie. De forma predeterminada (caduca no está configurada), la cookie se borra automáticamente cuando se cierra el navegador.

En términos generales, la forma de las cookies es así: "cookieName1=cookie1; cookieName2=cookie2; expires="date. Aquí hay algunos puntos a tener en cuenta:

1. Presta atención a los puntos.

Puedes escribir la cadena antes de ";expires=" como quieras, pero ";expires=" debe seguir este método de escritura, especialmente el punto y coma, de lo contrario el navegador no lo reconocerá. usted caduca (tiempo de vencimiento) y lo trata como parte del contenido de la cookie.

Por ejemplo:

Si escribes

1 lt;htmlgt;

2 lt;headgt;

3 lt; tipo de script="text/javascript"gt;

4 var fecha = nueva fecha();

5 fecha.setDate(date.getDate(); //la fecha se establece en diez días después

6 document.cookie = "username=findingsea^password=123^expires=" date.toGMTString() //El método toGMTString convierte la fecha al formato de hora de Greenwich

7 lt;/scriptgt;

8 lt;/headgt;

9 lt;bodygt;

10

11 lt;/bodygt;

12 lt;/htmlgt;

Abre las opciones en Firefox--gt; Privacidad--gt;

El momento en que la cookie caduca es cuando finaliza la sesión actual, es decir, cuando se cierra el navegador. En otras palabras, los vencimientos que establecemos no tienen ningún efecto.

Es fácil de solucionar. Simplemente agregue un punto y coma antes de que caduque en el código anterior, es decir, cámbielo a "...^;expires=" y vuelva a ejecutar Firefox para ver las cookies.

p>

Puede ver que después de que el tiempo de vencimiento sea 10 (hoy es 31 de agosto de 2012), el vencimiento se configuró correctamente, por lo que el punto y coma es muy importante, ¡muy importante! ! !

2. Cómo borrar las cookies

De hecho, es inexacto decir borrar cookies. Debería decirse que las cookies caducan. Porque no puede dejar la cookie vacía directamente (si cree que document.cookie="" borrará la cookie, solo puedo decir que es demasiado ingenuo), y el método para configurar la cookie también es muy simple, es decir para establecer caduca. Podemos configurar la caducidad en un período de tiempo prolongado para que la cookie pueda almacenarse durante un período prolongado. Luego, también podemos configurar la cookie en el pasado para que caduque inmediatamente. Este "pasado" es el 1 de enero de 1970. Configuramos la caducidad hasta esta fecha y la cookie caducará. En cuanto a por qué es esta vez, consulte el conocimiento sobre 1970-1-1 00:00.000.

3. Cómo configurar y obtener cookies

lt; Establecer múltiples variables en una cookie;

JavaScript no proporciona la capacidad de obtener valores de cookies. basado en el nombre de las cookies. Como se mencionó anteriormente, document.cookie es solo una cadena, simplemente podemos realizar un análisis de cadenas en ella.

Para analizar al recuperar, debe configurar el identificador al configurar. El punto a tener en cuenta aquí es exactamente lo opuesto al primer punto, se nos advierte que no olvidemos el punto y coma, y ​​sugiero que en Al configurar el identificador. intenta no utilizar punto y coma como separadores. Veamos la comparación

Código 1:

1 lt;

2 lt;

3 lt; script type="text/javascript"gt;

4 var fecha = nueva fecha()

5 fecha.setDate(fecha) .getDate() 10);

6 document.cookie = "nombre de usuario=findingsea; contraseña=123; expira=" date.toGMTString();

7 lt;/scriptgt;

8 lt;/headgt;

9 lt;bodygt;

10

11 lt;/ bodygt;

12 lt;/htmlgt;

Código 2:

1 lt;htmlgt;

2 lt;headgt;

3 lt; tipo de script="text/javascript"gt;

4 var fecha = nueva fecha();

5 fecha.setDate(date.getDate () 10);

6 document.cookie = "nombre de usuario=findingsea^contraseña=123^; expira=" date.toGMTString();

7 lt;/scriptgt;

8lt;/headgt;

9lt;bodygt;

10

11lt;/bodygt;

12 lt;/htmlgt;

Se puede ver claramente que la contraseña = 123 en el código 1 ha sido "tragada". La razón de este fenómeno es que cuando el navegador guarda la cookie, después de leer el punto y coma, se considera que el contenido. La forma de cookie ideal para el navegador es "nombre de cookie = cookie; expira = fecha", pero obviamente no estamos satisfechos con esto, por lo que necesitamos establecer varios valores en una cookie. utilizar identificadores (no punto y coma) para separarlos como el código 2. Luego, al leer, también se lee uno por uno según el identificador.

lt;Establecer múltiples cookies>

Por supuesto, lo anterior es una situación relativamente compleja que requiere que configuremos múltiples variables en la misma cookie. Una situación más estandarizada es. Una cookie almacena un objeto.

Pero en este caso, su cookie ocupará más espacio (en comparación con configurar múltiples variables en una cookie, porque necesita establecer una caducidad para cada cookie). Sin embargo, esta operación es más sencilla y estandarizada, y se recomienda cuando hay pocas variables.