Cookies в або як зберігати невелику інформацію на стороні клієнта

Cookie - це один зі способів зберігання деякої інформації про користувача сайту в той час коли користувач не знаходиться на сайті. Cookie зазвичай використовуються для збереження інформації про користувача між його візитами на сайт. Cookie - це невеликий текстовий файл відправлений сервером (сайтом) і збережений оглядачем на комп'ютері клієнта (користувача).

Cookie - це один зі способів зберігання некториє інформації про користувача сайту в той час коли користувач не знаходиться на сайті. Cookie зазвичай використовуються для збереження інформації про користувача між його візитами на сайт. Cookie - це невеликий текствой файл відправлення сервером (сайтом) і збережений оглядачем на комп'ютері клієнта (користувача). Наприклад, коли користувач приходить до Вас на сайт, то Ви можете зберегти інформації про його останній візит, а при наступному відвідуванні, можна з лугкостью прочитати цю інформацію і показати користувачеві, коли він був на сайті в останній раз.


Як створити Cookie в ASP.NET


Як прочитати значення з Cookie

Для читання cookie використовуємо наступний код:

Як видалити Cookie

Для видалення існуючого cookie зазвичай задається пройшла дата в строк закінчення (expire). це можна зробити так:

Клас HttpCookie знаходить в просторі імен System.Web. Ви можете використовувати HttpCookie для маніпулювання cookies замість об'єктів Response і Request.

HttpCookie має такі властивості:

Ви можете використовувати клас HttpCookie для створення кукис таким чином:

Обмеження браузерів на використання cookies.

Мааксімальний розмір файлу кукис може бути 4096 байт. Це не багато, але в принципі достатньо щоб зберігати корисну інформацію, зокрема ID користувача. Також буде обмежено й кількість файлів кукисов. Їх може бути не більше 20 на одні web-сайт. Якщо ви створите новий 21-ий кукис, то броузер видалить найстаріший кукис з уже існуючих.

Відвідувач сайту може устновіть в своєму браузері «не використовувати cookies». У цьому випадки, Ви не зможете записати файл кукис на комп'ютері користувача, саме тому і слід перевіряти настройки броузера перед тим як записувати кукіси.

Якщо відвідувач відключить використання кукисов, Вам потрібно вирішити, чи хочете записувати дані якимось іншим способом (наприклад, Session) чи ні. Якщо використання кукис необхідно для роботи сайту, то користувач повинен отримати повідомлення про те, що йому необхідно включити використання кукисов.

Причини відсутності підтримки браузером кукисов (cookies)

Існує дві причини, через які клієнтський комп'ютер не зможе прийняти кукіси:

- Web-браузер не підтримує кукіси;
- Web-броузер підтримує, але користувач відключив їх використання навмисно.

Як визначити поддердівает чи броузер кукіси (cookies)

Як визначити, що броузер підтримує кукіси, але користувач відключив цю можливість

Якщо користувач відключив використання кукисов в броузері, то вище зазначений метод Request.Browser.Cookies при перевірки все одно поверне true, але кукіси не зберігатимуться на комп'ютері кліета. Один із способів перевірки в даному випадки є спроба зберегти кукис на першій сторінці, а потім використовуючи Response.Redirect перенаправити на іншу сторінку і прочитати записаний кукис.

Краща практика при використанні cookies в ASP.NET

Кукіси - це простий текст, і тому не використовуються для зберігання важливої ​​інформації такої як паролі без попередньо шифрування. Якщо Ви хочете використовувати опцію «Запам'ятати мене», настійно рекомендую шифрувати дані записані в кукис. Кукіси зазвичай використовуються для зберігання інформації наступного типу: остання дата візиту користувача, улюблений колір, вік відвідувача і т.д.

Питання безпеки при використанні Cookies в ASP.NET