Cookie y sesión y cookie de token, ¿la sesión es tonta y poco clara?

Cookie, ¿sesión tonta y poco clara?

Después de tantos años de pruebas, todavía no puedo decir qué es una cookie y qué es una sesión. Muy normal, muchos ingenieros de desarrollo junior pueden no ser capaces de descubrir qué es una sesión, y las cookies serán relativamente simples.

El siguiente artículo espera ayudarlo a distinguir claramente la diferencia entre estas dos tecnologías y sus escenarios de uso correspondientes.

A) Características de .cookie:

  1. Cookie es una tecnología de almacenamiento en caché del lado del cliente
  2. El servidor genera los datos de las cookies y los envía al navegador para guardarlos.
  3. Formato de datos de cookies: par clave-valor
  4. Mecanismo de caducidad de datos de cookies: establecer el valor de caducidad

La cookie es una tecnología de cliente, que generalmente es generada por el servidor y devuelta al cliente del navegador para guardarla, y la cookie se guarda en el cliente del navegador en forma de pares clave-valor. Cada cookie tendrá un nombre, valor y tiempo de vencimiento. .... Existen muchos casos de uso de cookies, y los más comunes en el proyecto son:

  1. Inicie sesión para recordar el nombre de usuario

  2. Grabar el historial de navegación del usuario

  ...

Lo más familiar en la aplicación anterior es recordar el nombre de usuario. Tomando como ejemplo la función de inicio de sesión del sitio web de Jingdong, cuando iniciamos sesión en Jingdong una vez y luego iniciamos sesión en la página de inicio de sesión, descubriremos que te ayudará antes de completar. Nombre de usuario, este escenario se logra a través de la tecnología de cookies.

1. Abra el navegador Firefox, visite la página de inicio de sesión de Jingdong, ingrese la cuenta de inicio de sesión, la contraseña para completar el inicio de sesión:

 

 

2. Salga de la página de inicio:

 

 

3. Vuelva a iniciar sesión en la página de inicio de sesión y compruebe que el cuadro de entrada de nombre de usuario ha rellenado el número de teléfono móvil anterior:

 4. F12 Abra el navegador Firefox y busque la cookie que guarda el número de teléfono móvil: "mp", el valor es la información del nombre de usuario que completamos:

Resumen: Este proceso de implementación: el inicio de sesión es exitoso, escriba el número de teléfono móvil en la cookie ---> regrese a la página de inicio de sesión e inicie sesión nuevamente, tome el valor del número de teléfono móvil de acuerdo con el nombre de la cookie mp y vuelva a ingresarlo en el cuadro de entrada de nombre de usuario (tome el valor de acuerdo con la clave )

 

Expansión: las cookies tienen un mecanismo de caducidad, puede controlar cuándo caduca la cookie configurando el tiempo de caducidad de la cookie

El tiempo de caducidad de este mp es de un mes, por lo tanto, siempre que no borre los datos de cookies en el lado del navegador durante este mes, use el navegador Firefox para acceder a la página de inicio de sesión de Jingdong y podrá ver el efecto del relleno del número de teléfono móvil.

 

================================================== ============ Línea dividida ==================================== ==========================================

二) .session

Características de la sesión:

  1. session es una tecnología de caché de sesión del lado del servidor.
  2. La sesión es creada por el contenedor web en el lado del servidor y almacenada en el lado del servidor.
  3. Datos de guardado de sesión: forma de par clave-valor
  4. Sesión expirada: 30 minutos por defecto

La sesión es una tecnología de sesión en el lado del servidor. Cuando un usuario inicia sesión en el sistema, un contenedor web en el lado del servidor creará una sesión. En esta sesión, la información del usuario conectado puede guardarse, y también se guarda en forma de pares clave-valor. Utiliza tecnología de sesión para realizar la autenticación (autorización), es decir, los usuarios pueden acceder a algunas páginas y datos en el sistema solo después de iniciar sesión.

Tome el siguiente sistema como ejemplo:

El acceso directo a la página de inicio index.html del sistema lmcanon no se puede acceder con éxito, y será redirigido a la página de inicio de sesión login.html, porque este sistema realiza la autenticación del usuario, y los usuarios sin inicio de sesión no pueden acceder a los datos en el sistema.

Como sigue:

 

2. Ahora inicie sesión en el sistema:

Cuando abre F12, puede ver que hay un encabezado "set-cookie" en el encabezado de respuesta de la interfaz de inicio de sesión. Hay "JSESSIONID = 8AC39619BB5BEC4426CF999A92E74337". El navegador ve este encabezado de respuesta y sabe escribir estos datos en Entre las cookies, el nombre de la cookie es: "JSESSIONID" y el valor es: " 8AC39619BB5BEC4426CF999A92E74337". El servidor devuelve el número de sesión. Esta sesión en el lado del servidor guarda la información del usuario conectado.

Después de ser almacenado en caché como una cookie, puede ver estos datos en la cookie del navegador, como se muestra a continuación:

 

 Después de iniciar sesión, no hay ningún problema para acceder a cualquier página del sistema, ya que cada solicitud posterior traerá el valor de "JSESSIONID" en la cookie en el navegador pasado, como se muestra en la figura a continuación, acceda al menú de "programación semanal" Al solicitar esta página y cualquier solicitud de interfaz de la página, el ID de sesión " 8AC39619BB5BEC4426CF999A92E74337" se incluirá en el encabezado de la solicitud y luego se enviará al servidor, como se muestra en la siguiente solicitud:

 

 

 

Cuando el servidor recibe esta solicitud, la identificación de la sesión en el encabezado de la solicitud "Cookie" coincide con el servidor y determina que es la misma sesión, y la sesión tiene información del usuario que ha iniciado sesión, por lo que juzga que la solicitud fue emitida por un usuario conectado, lo que permite que la solicitud se libere .

El proceso anterior se puede representar mediante la siguiente imagen:

 

 

 

Extensión 1: procesamiento de caducidad de sesión.

Cuando la sesión en el lado del servidor caduca, cuando continúa iniciando la solicitud, debido a que el número de sesión que trajo del cliente es el mismo que el anterior, fallará la verificación y se le pedirá que inicie sesión nuevamente si la sesión caduca.

Extensión 2: mecanismo de token

Un ejemplo de un proyecto de aplicación: los proyectos de aplicaciones
generales se autentican en función de un token.
Debido a que el cliente no es un navegador en este momento, no existe una cookie.
Cuando el usuario inicia sesión en la aplicación, el servidor responderá con un mensaje simbólico (generalmente una cadena de identificadores únicos devueltos, como uuid u otro).
El servidor almacenará una relación de mapeo entre el usuario conectado y el token, que generalmente se almacena en redis o en una tabla. El token devuelto por el servidor se almacenará en
la memoria caché local del teléfono móvil, y luego el teléfono móvil accederá a otras páginas de la aplicación. Lleve este token al servidor para su verificación. Si puede encontrar la información de usuario de inicio de sesión de redis a través de este token,
entonces se lo considera un usuario conectado.

Invalidación de token: después de
un período de tiempo, el token del lado del servidor deja de ser válido, luego la relación de mapeo entre este token y el usuario se eliminará de redis, luego, cuando regrese más tarde, el token traído por su solicitud móvil
no coincidirá con el inicio de sesión Usuario, el servidor le dice al cliente que necesita iniciar sesión nuevamente,

 

Sobre el uso compartido de cookies, sesión y token está aquí, espero que esto pueda ayudar a todos. Hay lugares incorrectos, bienvenidos a corregirme en el área de mensajes. Siéntete bien, no olvides que te gusta.

Desde: https://blog.csdn.net/qq_33616529/article/details/78288883

Después de tantos años de pruebas, todavía no puedo decir qué es una cookie y qué es una sesión. Muy normal, muchos ingenieros de desarrollo junior pueden no ser capaces de descubrir qué es una sesión, y las cookies serán relativamente simples.

El siguiente artículo espera ayudarlo a distinguir claramente la diferencia entre estas dos tecnologías y sus escenarios de uso correspondientes.

A) Características de .cookie:

  1. Cookie es una tecnología de almacenamiento en caché del lado del cliente
  2. El servidor genera los datos de las cookies y los envía al navegador para guardarlos.
  3. Formato de datos de cookies: par clave-valor
  4. Mecanismo de caducidad de datos de cookies: establecer el valor de caducidad

La cookie es una tecnología de cliente, que generalmente es generada por el servidor y devuelta al cliente del navegador para guardarla, y la cookie se guarda en el cliente del navegador en forma de pares clave-valor. Cada cookie tendrá un nombre, valor y tiempo de vencimiento. .... Existen muchos casos de uso de cookies, y los más comunes en el proyecto son:

  1. Inicie sesión para recordar el nombre de usuario

  2. Grabar el historial de navegación del usuario

  ...

Lo más familiar en la aplicación anterior es recordar el nombre de usuario. Tomando como ejemplo la función de inicio de sesión del sitio web de Jingdong, cuando iniciamos sesión en Jingdong una vez y luego iniciamos sesión en la página de inicio de sesión, descubriremos que te ayudará antes de completar. Nombre de usuario, este escenario se logra a través de la tecnología de cookies.

1. Abra el navegador Firefox, visite la página de inicio de sesión de Jingdong, ingrese la cuenta de inicio de sesión, la contraseña para completar el inicio de sesión:

 

 

2. Salga de la página de inicio:

 

 

3. Vuelva a iniciar sesión en la página de inicio de sesión y compruebe que el cuadro de entrada de nombre de usuario ha rellenado el número de teléfono móvil anterior:

 4. F12 Abra el navegador Firefox y busque la cookie que guarda el número de teléfono móvil: "mp", el valor es la información del nombre de usuario que completamos:

Resumen: Este proceso de implementación: el inicio de sesión es exitoso, escriba el número de teléfono móvil en la cookie ---> regrese a la página de inicio de sesión e inicie sesión nuevamente, tome el valor del número de teléfono móvil de acuerdo con el nombre de la cookie mp y vuelva a ingresarlo en el cuadro de entrada de nombre de usuario (tome el valor de acuerdo con la clave )

 

Expansión: las cookies tienen un mecanismo de caducidad, puede controlar cuándo caduca la cookie configurando el tiempo de caducidad de la cookie

El tiempo de caducidad de este mp es de un mes, por lo tanto, siempre que no borre los datos de cookies en el lado del navegador durante este mes, use el navegador Firefox para acceder a la página de inicio de sesión de Jingdong y podrá ver el efecto del relleno del número de teléfono móvil.

 

================================================== ============ Línea dividida ==================================== ==========================================

二) .session

Características de la sesión:

  1. session es una tecnología de caché de sesión del lado del servidor.
  2. La sesión es creada por el contenedor web en el lado del servidor y almacenada en el lado del servidor.
  3. Datos de guardado de sesión: forma de par clave-valor
  4. Sesión expirada: 30 minutos por defecto

La sesión es una tecnología de sesión en el lado del servidor. Cuando un usuario inicia sesión en el sistema, un contenedor web en el lado del servidor creará una sesión. En esta sesión, la información del usuario conectado puede guardarse, y también se guarda en forma de pares clave-valor. Utiliza tecnología de sesión para realizar la autenticación (autorización), es decir, los usuarios pueden acceder a algunas páginas y datos en el sistema solo después de iniciar sesión.

Tome el siguiente sistema como ejemplo:

El acceso directo a la página de inicio index.html del sistema lmcanon no se puede acceder con éxito, y será redirigido a la página de inicio de sesión login.html, porque este sistema realiza la autenticación del usuario, y los usuarios sin inicio de sesión no pueden acceder a los datos en el sistema.

Como sigue:

 

2. Ahora inicie sesión en el sistema:

Cuando abre F12, puede ver que hay un encabezado "set-cookie" en el encabezado de respuesta de la interfaz de inicio de sesión. Hay "JSESSIONID = 8AC39619BB5BEC4426CF999A92E74337". El navegador ve este encabezado de respuesta y sabe escribir estos datos en Entre las cookies, el nombre de la cookie es: "JSESSIONID" y el valor es: " 8AC39619BB5BEC4426CF999A92E74337". El servidor devuelve el número de sesión. Esta sesión en el lado del servidor guarda la información del usuario conectado.

Después de ser almacenado en caché como una cookie, puede ver estos datos en la cookie del navegador, como se muestra a continuación:

 

 Después de iniciar sesión, no hay ningún problema para acceder a cualquier página del sistema, ya que cada solicitud posterior traerá el valor de "JSESSIONID" en la cookie en el navegador pasado, como se muestra en la figura a continuación, acceda al menú de "programación semanal" Al solicitar esta página y cualquier solicitud de interfaz de la página, el ID de sesión " 8AC39619BB5BEC4426CF999A92E74337" se incluirá en el encabezado de la solicitud y luego se enviará al servidor, como se muestra en la siguiente solicitud:

 

 

 

Cuando el servidor recibe esta solicitud, la identificación de la sesión en el encabezado de la solicitud "Cookie" coincide con el servidor y determina que es la misma sesión, y la sesión tiene información del usuario que ha iniciado sesión, por lo que juzga que la solicitud fue emitida por un usuario conectado, lo que permite que la solicitud se libere .

El proceso anterior se puede representar mediante la siguiente imagen:

 

 

 

Extensión 1: procesamiento de caducidad de sesión.

Cuando la sesión en el lado del servidor caduca, cuando continúa iniciando la solicitud, debido a que el número de sesión que trajo del cliente es el mismo que el anterior, fallará la verificación y se le pedirá que inicie sesión nuevamente si la sesión caduca.

Extensión 2: mecanismo de token

Un ejemplo de un proyecto de aplicación: los proyectos de aplicaciones
generales se autentican en función de un token.
Debido a que el cliente no es un navegador en este momento, no existe una cookie.
Cuando el usuario inicia sesión en la aplicación, el servidor responderá con un mensaje simbólico (generalmente una cadena de identificadores únicos devueltos, como uuid u otro).
El servidor almacenará una relación de mapeo entre el usuario conectado y el token, que generalmente se almacena en redis o en una tabla. El token devuelto por el servidor se almacenará en
la memoria caché local del teléfono móvil, y luego el teléfono móvil accederá a otras páginas de la aplicación. Lleve este token al servidor para su verificación. Si puede encontrar la información de usuario de inicio de sesión de redis a través de este token,
entonces se lo considera un usuario conectado.

Invalidación de token: después de
un período de tiempo, el token del lado del servidor deja de ser válido, luego la relación de mapeo entre este token y el usuario se eliminará de redis, luego, cuando regrese más tarde, el token traído por su solicitud móvil
no coincidirá con el inicio de sesión Usuario, el servidor le dice al cliente que necesita iniciar sesión nuevamente,

 

Sobre el uso compartido de cookies, sesión y token está aquí, espero que esto pueda ayudar a todos. Hay lugares incorrectos, bienvenidos a corregirme en el área de mensajes. Siéntete bien, no olvides que te gusta.

Desde: https://blog.csdn.net/qq_33616529/article/details/78288883

Supongo que te gusta

Origin www.cnblogs.com/hclearning/p/12744616.html
Recomendado
Clasificación