Каков максимальный размер ключа cookie веб-браузера?
Каков максимальный размер ключа cookie веб-браузера?
Я знаю, что максимальный размер файла cookie составляет 4 КБ, но имеет ли ограничение также ограничение?
Ответы
Ответ 1
Ограничение 4K, о котором вы читаете, относится ко всему файлу cookie, включая имя, значение, дату истечения срока годности и т.д. Если вы хотите поддерживать большинство браузеров, я предлагаю сохранить имя менее 4000 байт, а общий размер файла cookie - 4093 байта.
Будьте осторожны: если имя слишком велико, вы не можете удалить cookie (по крайней мере, на JavaScript). Куки файл удаляется путем его обновления и истечения срока его действия. Если имя слишком велико, скажем 4090 байт, я обнаружил, что не могу установить дату истечения срока действия. Я только посмотрел на это из интереса, а не на то, что я планирую иметь такое большое имя.
Чтобы узнать больше об этом, введите "" Ограничения cookie браузера" для обычных браузеров.
Если вы хотите поддерживать большинство браузеров, не превышайте 50 куки файлов на домен и 4093 байта на домен. То есть размер всех файлов cookie не должен превышать 4093 байта.
Это означает, что у вас может быть 1 cookie из 4093 байт или 2 файла cookie размером 2045 байт и т.д.
Я использовал 4095 байтов из-за IE7, однако теперь Mobile Safari поставляется с 4096 байтами с 3 байтами на один куки файл, поэтому максимум 4093 байта.
Ответ 2
Собственно, RFC 2965, документ, определяющий, как работает cookie, указывает, что должна быть максимальная длина ключа cookie или размер значения и поощряет реализации для поддержки произвольно больших файлов cookie. Каждый максимум реализации браузера обязательно будет другим, поэтому обратитесь к отдельной документации по обозревателю.
См. раздел 5.3 "Пределы реализации", в RFC.
Ответ 3
Вы также можете использовать веб-хранилище, если спецификации приложений позволяют вам (он поддерживает IE8 +).
В распоряжении имеется 5M (большинство браузеров) или 10M (IE) памяти.
" Web Storage (второе издание)" является API и " HTML5 Local Storage" - это быстрый старт.
Ответ 4
После тестирования нескольких браузеров и использования обозревателей я составил следующий список
Ответ 5
Ключ cookie (используемый для идентификации сеанса) и файл cookie - это то же самое, что используется по-разному. Таким образом, предел будет таким же. Согласно Microsoft, его 4096 байт.
MSDN
файлы cookie обычно ограничены 4096 байтов, и вы не можете хранить более 20 cookie на сайт. Используя один cookie с подразделами, вы используете меньше эти 20 файлов cookie, что ваш сайт выделено. Кроме того, один файл cookie занимает около 50 символов для накладные расходы (информация об истечении срока действия и так далее), плюс длина значения которые вы храните в нем, все из которых рассчитывается по отношению к пределу 4096 байт. Если вы храните пять подразделов вместо пяти отдельные файлы cookie, вы сохраняете накладные расходы на отдельные файлы cookie и может сэкономить около 200 байт.