Я строю серверный сервер RESTful без использования состояния в Java, который будет использоваться интерфейсом AngularJS. Поскольку он должен быть неактивным, я не создаю сеансы, но генерирую токены доступа, а точнее, токены JSON, которые клиент должен предоставлять по каждому запросу.Как аннулировать сеанс пользователя при простоях на сервере без состояния?
Этикетки содержат поле «expires», которое действует как абсолютная дата истечения срока действия. Тем не менее, я хотел бы иметь дополнительное истечение времени бездействия пользователя. Поэтому я бы определил токен доступа как действительный до 24 часов, если пользователь активен один раз каждые 30 минут.
Я мог бы реализовать это, написав что-то в базе данных по каждому запросу и проверив время между запросами, но это, похоже, много работает на то, что работало из коробки при использовании управления сеансом сервера приложений.
Вам нужно некоторое сохранение, чтобы иметь некоторые данные для сравнения по каждому запросу, поэтому вам нужно что-то хранить где-нибудь (например, дБ). Я не знаю, сколько работы будет связано с этим в контексте вашего приложения, но альтернативой является забыть о «недействительной» части и иметь токены с более коротким сроком службы. –