¿Cuáles son los pros y los contras de las aplicaciones web completamente basadas en tokens basadas en sesiones y en sesiones gratuitas?

En general, usted dice sesiones para usuarios humanos y tokens para computadoras.

Pero en realidad no hay una gran diferencia. Una sesión está vinculada a una cookie de sesión que contiene una cadena aleatoria para identificar al usuario. Un token también puede ser solo una cadena aleatoria de caracteres. Ambos se envían en cada solicitud y permiten el acceso a los recursos.

La principal diferencia está en términos de escala. Una sesión a menudo vive en un servidor o un grupo de servidores. Eso significa que los datos de la sesión están en el servidor y la cookie de sesión se utiliza para obtenerlos.

Un token puede contener los datos, lo que significa que el servidor no necesita saber mucho sobre el usuario. Básicamente, eso significa que a menudo se usa para API donde los servidores no tienen estado y necesitan escalar a miles de solicitudes.

Si va “sin sesión” para una aplicación web, obtendrá la ventaja de un backend sin estado que puede escalar más fácilmente.

Pero las sesiones son fáciles de implementar y pueden satisfacer la mayoría de los casos de uso que involucran a usuarios reales.