Necesito alguna aclaración. He estado leyendo sobre REST y creando aplicaciones RESTful. Según Wikipedia, REST en sí mismo se define como Transferencia de estado representacional . Por lo tanto, no entiendo todo este trago sin estado que todos siguen vomitando.
De wikipedia:
En cualquier momento en particular, un cliente puede estar en transición entre estados de aplicación o "en reposo". Un cliente en estado de reposo puede interactuar con su usuario, pero no crea carga y no consume almacenamiento por cliente en el conjunto de servidores o en la red.
¿Solo están diciendo que no use el almacén de datos de nivel de sesión / aplicación?
Entiendo que uno de los objetivos de REST es hacer que el acceso al URI sea coherente y esté disponible, por ejemplo, en lugar de ocultar las solicitudes de paginación dentro de las publicaciones, haciendo que el número de página de una solicitud forme parte del GET URI. Tiene sentido para mi. Pero parece que se está yendo por la borda diciendo que no se deben almacenar datos por cliente (datos de sesión) en el lado del servidor.
¿Qué pasaría si tuviera una cola de mensajes y mi usuario quisiera leerlos, pero a medida que los leía, quería bloquear los mensajes de ciertos remitentes que llegaban durante la sesión? ¿No tendría sentido almacenar esto en un lugar del lado del servidor y hacer que el servidor solo envíe mensajes (o ID de mensajes) que no hayan sido bloqueados por el usuario?
¿Realmente tengo que enviar la lista completa de remitentes de mensajes para bloquear cada vez que solicito la nueva lista de mensajes? La lista de mensajes pertinente para mí no debería ni debería ser un recurso disponible públicamente en primer lugar ...
De nuevo, solo trato de entender esto. Alguien por favor aclarar.
Actualizar:
He encontrado una pregunta de desbordamiento de pila que tiene una respuesta que no me llega hasta allí: cómo administrar el estado en REST que dice que el estado del cliente que es importante debe transferirse en cada solicitud ... Ugg .. parece un montón de gastos generales ... ¿Es esto correcto?