В ASP.NET я немного смущен ролью cookie в состоянии сеанса. То, что, является различием между нормальным состоянием сеанса и состоянием сеанса без cookie?
Нормальное состояние сеанса предполагает предоставление файла cookie. Файл cookie содержит идентификатор сеанса, который используется веб-сайтом для сопоставления посетителей с их соответствующими значениями сеанса.
Состояние сеанса без файлов cookie использует те же принципы, но не использует файлы cookie для передачи идентификатора сеанса. Обычно это передается как параметр в строке запроса.
например.
http://www.somewebsite.com/page.aspx?sid=jrkwojeqrojq3op349023231234r23rf2
ASP.NET может изменять относительные ссылки, найденные на странице, и встраивать сеанс Идентификатор в URL-адресах, а не в файле cookie.
Таким образом, пока пользователь следует по пути ссылок, предоставляемых сайтом, состояние сеанса может поддерживаться без использования файлов cookie. Однако, если конечный пользователь перезапишет URL-адрес, экземпляр состояния сеанса, скорее всего, будет потерян.
Дополнительная литература:
cookieless означает, что sessionId преобразуется в URL-адрес для каждого запроса, в отличие от установки cookie в браузере.
Сеанс без файлов cookie не использует файлы cookie - это браузер пользователя для хранения состояния сеанса. Вместо этого он сохраняет сеанс либо на самой странице, либо в URL-адресе. Прочтите здесь сравнение .