Учебники

14) Cookie против сессии

Что такое Cookie?

Файл cookie — это небольшой файл с максимальным размером 4 КБ, который веб-сервер хранит на клиентском компьютере. После того, как cookie был установлен, все последующие запросы страницы возвращают имя и значение cookie. Файл cookie может быть прочитан только с того домена, с которого он был создан. Например, файл cookie, установленный с использованием домена www.guru99.com, не может быть прочитан с домена career.guru99.com. Большинство веб-сайтов в Интернете отображают элементы из других доменов, таких как реклама. Домены, обслуживающие эти элементы, также могут устанавливать свои собственные куки. Они известны как сторонние куки. Файл cookie, созданный пользователем, может быть виден только им. Другие пользователи не могут видеть его значение. В большинстве веб-браузеров есть варианты отключения куки-файлов, куки-файлов третьих сторон или обоих.

Что такое сессия?

Сеанс — это глобальная переменная, хранящаяся на сервере. Каждому сеансу присваивается уникальный идентификатор, который используется для извлечения сохраненных значений. Каждый раз, когда создается сеанс, cookie, содержащий уникальный идентификатор сеанса, сохраняется на компьютере пользователя и возвращается при каждом запросе к серверу. Если браузер клиента не поддерживает файлы cookie, в URL отображается уникальный идентификатор сеанса. Сеансы могут хранить относительно большие данные по сравнению с файлами cookie.

Значения сеанса автоматически удаляются при закрытии браузера. Если вы хотите хранить значения постоянно, то вы должны сохранить их в базе данных.

Как и переменная массива $ _COOKIE, переменные сеанса хранятся в переменной массива $ _SESSION. Как и файлы cookie, сеанс должен начинаться перед любыми тегами HTML.

Почему и когда использовать куки?

HTTP протокол без сохранения состояния; Файлы cookie позволяют нам отслеживать состояние приложения, используя небольшие файлы, хранящиеся на компьютере пользователя. Путь, в котором хранятся файлы cookie, зависит от браузера. Internet Explorer обычно хранит их в папке Temporal Internet Files. Персонализация взаимодействия с пользователем — это достигается путем предоставления пользователям возможности выбирать свои предпочтения. Запрашиваемые страницы, которые следуют, персонализированы на основе установленных предпочтений в файлах cookie. Отслеживание страниц, посещенных пользователем.

Почему и когда использовать сеансы?

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

Он также используется, когда вы хотите использовать альтернативу куки в браузерах, которые не поддерживают куки, для хранения глобальных переменных более эффективным и безопасным способом по сравнению с передачей их в URL, при разработке приложения, такого как корзина покупок, которое должно быть временным хранить информацию с емкостью более 4 КБ.

Cookie Vs. сессия

печенье
сессия
  • Cookies — это файлы на стороне клиента, которые содержат информацию о пользователе
  • Сеансы — это файлы на стороне сервера, которые содержат информацию о пользователе
  • Cookie-файл заканчивается в зависимости от срока, установленного для него
  • Сессия заканчивается, когда пользователь закрывает свой браузер
  • Вам не нужно запускать cookie, так как он хранится на вашем локальном компьютере.
  • В PHP перед использованием $ _SESSION вы должны написать session_start (); Аналогично для других языков
  • Официальный максимальный размер файла cookie составляет 4 КБ.
  • В течение сеанса вы можете хранить столько данных, сколько захотите. Единственное ограничение, которое вы можете достичь, — это максимальный объем памяти, который скрипт может использовать за один раз, по умолчанию 128 МБ.
  • Файл cookie не зависит от сеанса
  • Сеанс зависит от Cookie
  • Нет функции с именем unsetcookie ()
  • Session_destroy (); используется для уничтожения всех зарегистрированных данных или сброса некоторых

КЛЮЧЕВАЯ РАЗНИЦА

  • Файлы cookie — это файлы на стороне клиента, содержащие информацию о пользователе, тогда как сеансы — это файлы на стороне сервера, содержащие информацию о пользователе.
  • Cookie не зависит от сессии, но Session зависит от Cookie.
  • Срок действия файла cookie истекает в зависимости от срока, установленного для него, а сеанс заканчивается, когда пользователь закрывает свой браузер.
  • Максимальный размер файла cookie составляет 4 КБ, тогда как в сеансе вы можете хранить столько данных, сколько захотите.
  • Cookie не имеет функции unsetcookie (), в то время как в Session вы можете использовать Session_destroy (); который используется для уничтожения всех зарегистрированных данных или сброса некоторых