2-е свойство REST

Изучаю что такое REST. Нашел статью про REST. Во 2-м свойстве REST написано

Протокол взаимодействия между клиентом и сервером требует соблюдения следующего условия: в период между запросами клиента никакая информация о состоянии клиента на сервере не хранится (Stateless protocol или «протокол без сохранения состояния»).

но с другой стороны также написано, что

Состояние сессии при этом сохраняется на стороне клиента. Информация о состоянии сессии может быть передана сервером какому-либо другому сервису (например, в службу базы данных) для поддержания устойчивого состояния, например, на период установления аутентификации. Клиент инициирует отправку запросов, когда он готов (возникает необходимость) перейти в новое состояние.

Т.е. получается (из 2-й цитаты), что Состояние сессии может храниться на сервере, но с другой стороны

в период между запросами клиента никакая информация о состоянии клиента на сервере не хранится (Stateless protocol или «протокол без сохранения состояния»)

т.е. информация о состояние клиента не может храниться на сервере. Но как я понимаю информация о состоянии сессии включает в себя информацию о состоянии клиента. Получается противоречие. Проясните пожалуйста этот момент (может это 2-е свойство не точно изложено - тогда приведите другую формулировку с другого ресурса). Объясните пожалуйста 2-е свойство REST.


Ответы (1 шт):

Автор решения: Арсен Сиреканян

Информация о состоянии сессии может быть передана сервером какому-либо другому сервису

Это предложение говорит лишь о передаче, не о хранении, поэтому противоречия нет. Состояние хранится на клиенте и необходимые куски при каждом запросе передаются серверу, а сервер уже дальше получив это состояние от клиента может использовать его

→ Ссылка