¿Cuáles son los pros y los contras de usar cookies frente a sesiones?


La mejor respuesta

La idea principal detrás de las cookies y las sesiones es la misma: hay algunos datos que deben ser recordado en varias partes de un sitio web. Por ejemplo, un sitio web puede querer recordar qué usuario ha iniciado sesión (en la máquina que realiza las solicitudes) para personalizar la página o incluso controlar el acceso.

Para la mayoría de los casos simples en los que las cookies contienen datos que solo mejoran al usuario experiencia y es desechable, las cookies son preferibles, porque se almacenan en el cliente en lugar del servidor, por lo que se adapta bien. También se puede acceder a los datos de las cookies desde JavaScript, mientras que los datos de la sesión son privados solo para el servidor. Las cookies también pueden persistir después de que el cliente cierra el navegador o se apaga, mientras que las sesiones generalmente no duran tanto para conservar recursos.

Por otro lado, cuando se trata de datos confidenciales, desea utilizar sesiones para evitar atacantes. de manipular cookies. Yahoo es un ejemplo infame de esto: su código de generación de cookies se vio comprometido y se accedió a cientos de miles de cuentas. Esto no implica que las cookies no se puedan utilizar para la autenticación, pero hay que tener mucho cuidado con los datos que ya no controlan. Muchos sitios web utilizan una combinación de ambos: cookies para almacenar el ID de la sesión y todos los datos confidenciales de la sesión en el servidor, para recordar a los usuarios que iniciaron sesión.

Las cookies y las sesiones son solo herramientas como martillos y alicates. Necesita evaluar la situación y averiguar qué herramienta funciona y dónde.

Respuesta

Bueno, las cookies duran hasta una fecha de vencimiento determinada, lo que podría ser una gran cantidad de tiempo. Se puede usar para evitar que el usuario tenga que iniciar sesión repetidamente o identificarse de alguna otra manera.

El almacenamiento de sesión expira cuando el usuario cierra la pestaña del navegador … por lo que es inútil para cualquiera de esas cosas.

Quizás esté pensando en «Almacenamiento local», que es una tercera cosa.

Tanto el almacenamiento local como el de sesión pueden almacenar entre 5 y 25 Mbytes, según el navegador, y en cualquier formato. Las cookies solo pueden tener unos 4 kbytes, lo que no es suficiente para almacenar cosas como imágenes y audio.

Las cookies también son útiles porque el servidor puede acceder a ellas directamente sin necesidad de código JavaScript para cargarlas … sesión y almacenamiento local requiere código JavaScript para acceder a ellos, y si el servidor necesita verlos, tiene que haber algún software especial escrito para intercambiar esa información.

Las cookies y el almacenamiento local también permiten dos pestañas separadas que apuntan al mismo sitio web para compartir datos persistentes. El «almacenamiento de sesión» obliga a cada pestaña a utilizar datos separados. Esto puede ser bueno o malo, según lo que necesite.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *