Diferencia entre Cookie y Sesión

Sep 28, 2021
admin

¿Qué es una Cookie?

Una cookie es un pequeño archivo con un tamaño máximo de 4KB que el servidor web almacena en el ordenador del cliente. Una vez que se ha establecido una cookie, todas las solicitudes de página que siguen devuelven el nombre y el valor de la cookie. Una cookie sólo puede ser leída desde el dominio desde el que ha sido emitida. Por ejemplo, una cookie establecida con el dominio www.guru99.com no puede ser leída desde el dominio career.guru99.com. La mayoría de los sitios web de Internet muestran elementos de otros dominios, como la publicidad. Los dominios que sirven estos elementos también pueden establecer sus propias cookies. Estas se conocen como cookies de terceros. Una cookie creada por un usuario sólo puede ser visible para él. Otros usuarios no pueden ver su valor. La mayoría de los navegadores web tienen opciones para desactivar las cookies, las de terceros o ambas.

¿Qué es una sesión?

Una sesión es una variable global almacenada en el servidor. A cada sesión se le asigna un id único que se utiliza para recuperar los valores almacenados. Cada vez que se crea una sesión, se almacena en el ordenador del usuario una cookie que contiene el id de sesión único y que se devuelve con cada petición al servidor. Si el navegador del cliente no admite cookies, el identificador de sesión único se muestra en la URL. Las sesiones tienen la capacidad de almacenar datos relativamente grandes en comparación con las cookies.

Los valores de la sesión se borran automáticamente cuando se cierra el navegador. Si desea almacenar los valores de forma permanente, entonces debe almacenarlos en la base de datos.

Al igual que la variable de matriz $_COOKIE, las variables de sesión se almacenan en la variable de matriz $_SESSION. Al igual que las cookies, la sesión debe iniciarse antes de cualquier etiqueta HTML.

Diferencia de las cookies

  • Las cookies son archivos del lado del cliente que contienen información del usuario, mientras que las sesiones son archivos del lado del servidor que contienen información del usuario.
  • La cookie no depende de la sesión, pero la sesión sí depende de la cookie.
  • La cookie expira dependiendo del tiempo de vida que se establezca para ella, mientras que una sesión termina cuando el usuario cierra su navegador.
  • El tamaño máximo de la cookie es de 4KB mientras que en sesión se pueden almacenar tantos datos como se quiera.
  • Cookie no tiene una función llamada unsetcookie() mientras que en Sesión se puede utilizar Session_destroy(); que se utiliza para destruir todos los datos registrados o para deshacer algunos

¿Por qué y cuándo utilizar Cookies?

Http es un protocolo sin estado; las cookies nos permiten rastrear el estado de la aplicación utilizando pequeños archivos almacenados en el ordenador del usuario. La ruta donde se almacenan las cookies depende del navegador. Internet Explorer suele almacenarlas en la carpeta Archivos temporales de Internet. Personalización de la experiencia del usuario: esto se consigue permitiendo a los usuarios seleccionar sus preferencias. Las páginas solicitadas a continuación se personalizan en función de las preferencias establecidas en las cookies. Seguimiento de las páginas visitadas por un usuario.

¿Por qué y cuándo utilizar las Sesiones?

Para almacenar información importante como el id de usuario de forma más segura en el servidor donde los usuarios maliciosos no pueden templar con ellos. Las sesiones se utilizan para pasar valores de una página a otra.

También se utiliza cuando se quiere la alternativa a las cookies en navegadores que no soportan cookies, para almacenar variables globales de forma eficiente y más segura en comparación con pasarlas en la URL, desarrollando una aplicación como un carrito de la compra que tiene que almacenar temporalmente información con una capacidad superior a 4KB.

Cookie Vs. Session

Cookie
Session
  • Los cookies son ficheros del lado del cliente que contienen información del usuario
  • Las sesiones son ficheros del lado del servidorson archivos del lado del servidor que contienen información del usuario
  • Las cookies terminan dependiendo del tiempo de vida que se establezca para ellas
  • Una sesión termina cuando un usuario cierra su navegador
  • No necesita iniciar la cookie ya que se almacena en su máquina local
  • En PHP, antes de usar $_SESSION, tienes que escribir session_start(); Igualmente para otros lenguajes
  • El tamaño máximo oficial de las cookies es de 4KB
  • Dentro de la sesión puedes almacenar tantos datos como quieras. El único límite que puedes alcanzar es la memoria máxima que puede consumir un script a la vez, que es de 128MB por defecto
  • Una cookie no depende de Session
  • Una sesión es depende de Cookie
  • No existe una función llamada unsetcookie()
  • Session_destroy() se utiliza para destruir todos los datos registrados o para deshacer algunos

Deja una respuesta

Tu dirección de correo electrónico no será publicada.