Вы описываете конструкцию, в которой учетные данные пользователя проверяются при каждом запросе страницы, а форма входа используется только для хранения этих учетных данных в браузере.Я вижу несколько проблем с таким необычным подходом:
- Вы передаете конфиденциальную информацию при каждом HTTP-запросе.
- Для проверки учетных данных, которые вы, возможно, должны выполнитьзапрос к базе данных, и вы делаете это снова и снова и снова.
- Вы должны проверить учетные данные, просто чтобы узнать, от кого поступил запрос.
- Одновременные соединения с одинаковыми учетными данными будут совместно использовать данные [см. Приложение] .
Более типично проверять пользователя один раз (возможно, используя зашифрованный канал или хешированную информацию) и запоминать его в течение определенного времени.
Как бы то ни было, сессии и куки - это совершенно разные инструменты.Файлы cookie - это хранилище на стороне клиента, а сеансы - на стороне сервера.Они связаны друг с другом только потому, что наиболее типичная реализация сеанса использует файлы cookie для хранения идентификатора сеанса (поскольку HTTP является протоколом без сохранения состояния, такие приемы нужны для отслеживания того, от кого поступил запрос).Преимущество серверного хранилища в том, что вы имеете полный контроль над ним:
- Вы можете использовать столько места, сколько вам нужно.
- Вы можете использовать любой формат данных, который вам нужен.
- Вы можете хранить конфиденциальные данные или материалы, которые вы не хотите, чтобы пользователь видел или искажать.
- Вы можете доверять информации, поскольку вы положили ее туда.
Приложение
В классической системе сеансов, где вы назначаете случайный идентификатор при запуске сеанса, зарегистрированный пользователь может иметь множество одновременных экземпляров сеанса на разных компьютерах (или даже на одном компьютере, например,один в Firefox и еще три в окнах режима инкогнито Chrome).Если вы идентифицируете посетителя только по его имени пользователя, у пользователя будет только один сеанс: если он пойдет домой на обед, он найдет сеанс, который он оставил на работе, если он поделится своим паролем с другом, он увидит, что его другделает.Это можно считать ошибкой или особенностью, и, конечно, есть много хитростей, чтобы предотвратить это.Просто примите это во внимание.