Печенье Javascript без даты истечения срока действия

Я хотел бы настроить cookie, который никогда не истекает. Возможно ли это?

 document.cookie = "name=value; expires=date; path=path;domain=domain; secure";

Я не хочу, чтобы дата была действительно большой, мне просто интересно, было ли значение параметра expires в файле cookie, который сказал, что он никогда не истекает.

Спасибо.

Ответ 1

Неа. Не может быть сделано. "Способ" заключается в том, чтобы сделать дату истечения срока действия равной 2020 году.

Ответ 2

Нет синтаксиса для того, что вы хотите. Не истекает срок действия истечения срока действия файла cookie в конце сеанса. Единственный вариант - выбрать какое-нибудь сколь угодно большое значение. Имейте в виду, что некоторые браузеры имеют проблемы с датами за 2038 год (когда время эпохи unix превышает 32-битный int).

Ответ 3

Вы можете сделать в качестве примера Документы Mozilla:

 document.cookie = "someCookieName=true; expires=Fri, 31 Dec 9999 23:59:59 GMT";

P.S

Конечно, будет проблема, если человечество по-прежнему будет использовать ваш код в первую минуту года 10000:)

Ответ 4

Вы можете установить cookie с датой истечения месяца или еще что-то, а затем переназначить файл cookie каждый раз, когда пользователь снова посещает веб-сайт.

Ответ 5

Если вы не установите дату истечения срока действия, cookie истечет в конце сеанса пользователя. Я рекомендую использовать дату до того, как время unix эпохи продлит прошло 32-битное целое число. Чтобы поместить это в файл cookie, вы должны использовать document.cookie = "randomCookie=true; expires=Tue, 19 Jan 2038 03:14:07 UTC;, считая, что randomCookie - это cookie, который вы устанавливаете, и true - это соответствующее значение.

Ответ 6

Все файлы cookie истекают согласно cookie спецификация, Максимальное значение, которое вы можете установить,

 2^31 - 1 = 2147483647 = 2038-01-19 04:14:07

Таким образом, максимальное время жизни печенья

$.cookie('subscripted_24', true, { expires: 2147483647 });

Ответ 7

ВЫ ПРОСТО НЕ МОЖЕТ. Там нет точного кода, который можно использовать для установки вечного файла cookie, но будет использоваться старый трюк, например current time + 10 years.

Просто отметьте, что любые даты за пределами January 2038 обрекут вас на файлы cookie (32-битный int), будут удалены мгновенно. Пожелайте чуду, что это будет исправлено в ближайшем будущем. Для 64-битного int, годы вокруг 2110 будут безопасными. Со временем программное обеспечение и аппаратное обеспечение изменятся и никогда не смогут адаптироваться к более старым (вещи, которые у нас есть сейчас), поэтому подготовьте сейчас на будущее.

См. Проблема 2038 года

Ответ 8

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

Ответ 9

Просто пропустите параметр expires в инициализаторе объектов. Он отлично работает для меня.