Red de conocimiento informático - Problemas con los teléfonos móviles - La diferencia entre sesión y cookies

La diferencia entre sesión y cookies

La diferencia y conexión entre los mecanismos de cookies y de sesión.

Específicamente, el mecanismo de cookies adopta una solución que mantiene el estado en el lado del cliente. Es un mecanismo de almacenamiento para el estado de la sesión en el lado del usuario. Requiere que el usuario active la compatibilidad con cookies en el lado del cliente. La función de las cookies es un esfuerzo por resolver los defectos sin estado del protocolo HTTP.

El mecanismo de sesión utiliza una solución que mantiene el estado entre el cliente y el servidor. Al mismo tiempo, también hemos visto que dado que la solución para mantener el estado en el lado del servidor también necesita guardar una identidad en el lado del cliente, es posible que el mecanismo de sesión deba utilizar el mecanismo de cookies para lograr el propósito de guardar la identidad. La sesión proporciona una forma conveniente de administrar variables globales.

La sesión es para cada usuario. El valor de la variable se almacena en el servidor. Se utiliza un ID de sesión para distinguir qué variable de sesión del usuario es. por el usuario. El navegador lo devuelve al servidor durante el acceso. Cuando el cliente desactiva las cookies, este valor también se puede configurar para que se devuelva al servidor.

En términos de seguridad: cuando visita un sitio que utiliza sesión y crea una cookie en su máquina, se recomienda que el mecanismo SESSION en el lado del servidor sea más seguro porque no leerá el almacenamiento del cliente. información arbitrariamente.

La distribución de cookies ortodoxa se logra extendiendo el protocolo HTTP. El servidor agrega una línea especial de instrucciones al encabezado de respuesta HTTP para solicitar al navegador que genere la cookie correspondiente de acuerdo con las instrucciones.

Desde la perspectiva del servidor web, todas las solicitudes HTTP son independientes de las solicitudes anteriores. Es decir, cada respuesta HTTP depende completamente de la información contenida en la solicitud correspondiente. El mecanismo de gestión de estado supera algunas limitaciones de HTTP y permite que el cliente y el servidor de la red mantengan la relación entre las solicitudes. El período durante el cual se mantiene esta relación se denomina sesión.

Las cookies son pequeños fragmentos de texto almacenados por el servidor en la máquina local y enviados al mismo servidor con cada solicitud. El mecanismo de gestión de estado HTTP IETF RFC 2965 es una especificación general de cookies. El servidor web envía cookies al cliente mediante encabezados HTTP. En el terminal del cliente, el navegador analiza estas cookies y las guarda como un archivo local. Vinculará automáticamente cualquier solicitud al mismo servidor a estas cookies. cookie Diferencias y conexiones con el mecanismo de sesión

Específicamente, el mecanismo de cookies utiliza una solución que mantiene el estado en el lado del cliente, mientras que el mecanismo de sesión utiliza una solución que mantiene el estado en el lado del servidor. Al mismo tiempo, también hemos visto que dado que la solución para mantener el estado en el lado del servidor también necesita guardar una identidad en el lado del cliente, es posible que el mecanismo de sesión deba utilizar el mecanismo de cookies para lograr el propósito de guardar la identidad. pero en realidad tiene otras opciones.

Mecanismo de cookies. La distribución de cookies ortodoxas se logra extendiendo el protocolo HTTP. El servidor agrega una línea especial de instrucciones al encabezado de respuesta HTTP para solicitar al navegador que genere la cookie correspondiente de acuerdo con las instrucciones. Sin embargo, los scripts puros del lado del cliente, como JavaScript o VBScript, también pueden generar cookies. El uso de cookies se envía automáticamente al servidor en segundo plano por el navegador según ciertos principios. El navegador verifica todas las cookies almacenadas. Si el alcance declarado de una cookie es mayor o igual a la ubicación del recurso que se solicitará, la cookie se adjunta al encabezado de solicitud HTTP del recurso solicitado y se envía al servidor.

El contenido de la cookie incluye principalmente: nombre, valor, tiempo de caducidad, ruta y dominio. La ruta y el dominio juntos forman el alcance de la cookie. Si no se establece el tiempo de vencimiento, significa que la vida útil de esta cookie es durante la sesión del navegador. Cuando se cierra la ventana del navegador, la cookie desaparece.

Este tipo de cookie que dura mientras dura la sesión del navegador se denomina cookie de sesión. Las cookies de sesión generalmente no se almacenan en el disco duro sino en la memoria. Por supuesto, este comportamiento no está especificado en la especificación. Si se establece un tiempo de vencimiento, el navegador guardará las cookies en el disco duro. Si cierra y abre el navegador nuevamente, estas cookies seguirán siendo válidas hasta que se exceda el tiempo de vencimiento establecido. Las cookies almacenadas en el disco duro se pueden compartir entre diferentes procesos del navegador, como dos ventanas de IE. Para las cookies almacenadas en la memoria, diferentes navegadores tienen diferentes métodos de procesamiento

mecanismo de sesión. El mecanismo de sesión es un mecanismo del lado del servidor. El servidor utiliza una estructura similar a una tabla hash (o puede usar una tabla hash) para guardar información.

Cuando el programa necesita crear una sesión para la solicitud de un cliente, el servidor primero verifica si la solicitud del cliente ya contiene un identificador de sesión (llamado ID de sesión. Si lo contiene, significa que se ha creado antes). Si se ha creado una sesión para este cliente, el servidor recuperará la sesión de acuerdo con la identificación de la sesión y la usará (si no se puede recuperar, creará una nueva si la solicitud del cliente no incluye la identificación de la sesión). , se creará una sesión para el cliente y se generará una sesión. La identificación de sesión asociada con esta sesión debe ser una cadena que no se repita ni sea fácil de encontrar patrones para falsificar. ser devuelto al cliente para su almacenamiento en esta respuesta.

El método de guardar este ID de sesión puede utilizar cookies, de forma que durante el proceso de interacción, el navegador pueda mostrar automáticamente esta identificación al servidor según las reglas. Generalmente, el nombre de esta cookie es similar a SEEESIONID. Pero las cookies se pueden deshabilitar artificialmente y debe haber otros mecanismos para pasar la identificación de la sesión al servidor cuando las cookies están deshabilitadas.