Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407

2 особенности по Сессионным куки, на которые не удалось найти ответ

10.07.2025, 08:04. Показов 1877. Ответов 49
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если не затруднит, не подскажите ответы :

Вопрос 1. Где хранятся SessionCookie ? В памяти или на диске компьютера?
В одном источнике ответ нашел - в памяти (вроде бы логично) - но правильный ли он (учитывая, что был выражен в форме аксиомы без всяких ссылок) ?
Вопрос скорее более чисто технический, нежели практический. Ибо, даже если в памяти, то разница в скорости обработки информации совершенно минимальна.

Скорее пытаюсь определиться в целесообразности применения данного вида куки.
В пользу их применения - одна особенность - они сразу видны и на сервере. Передаю массив - не знаю, как в других языках, а php сразу формирует их в массив при чтении куки. Учитывая, если они хранятся в памяти - это оптимальный вариант передачи информации в плане скорости.
Но, т.к. одновременно использую аякс, не проще ли в нем передать всю информацию с точки зрения временных характеристик?

Вопрос 2. Можно ли принудительно командой js удалить (очистить) SessionCookie, чтобы они не передавались в сеансе ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.07.2025, 08:04
Ответы с готовыми решениями:

Удалить значение из куки ответом от сервера.
res.cookie(`token= ${token}; Secure; HttpOnly`) вот так я записываю значение в куки, а как удалить

Как исправить код, который запоминает в куках и выводит на след странице данные пользователя?
Здравствуйте. Имеется код, который запоминает в куках браузера введенные пользователем имя и...

Не удалось получить свойство "fadeIn" ссылки, значение которой не определено или является NULL
Доброго времени суток! Нашла хороший пример формы обратной связи:...

49
 Аватар для voraa
1286 / 1256 / 187
Регистрация: 21.01.2024
Сообщений: 5,771
10.07.2025, 08:28
Цитата Сообщение от 755 Посмотреть сообщение
Вопрос скорее более чисто технический, нежели практический.
Это чисто технический вопрос. Важно то, что к кукисам с атрибутом HttpOnly нет доступа из js и никто увидеть их не может, кроме сервера. А где браузер их ранит - не важно.
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 08:41  [ТС]
по вопросу 2 ответ нашел: нужно добавить max-age=-1
(странно, что не заметил ранее)

Добавлено через 11 минут
voraa, спасибо за комментарий.

Но не рассматриваю размещение в куках конфиденциальной информации- а просто массив, быстрей всего, числовой информации. И, если кто-то посторонний его увидит - не жалко. И, если модифицирует - тоже не страшно, ничего не произойдет- но, если правильно предполагаю - сессионные куки изменить сложно, учитывая их ограниченный срок?
Поэтому и не вижу необходимости в установке запрета httpOnly.
0
 Аватар для voraa
1286 / 1256 / 187
Регистрация: 21.01.2024
Сообщений: 5,771
10.07.2025, 08:45
Цитата Сообщение от 755 Посмотреть сообщение
по вопросу 2 ответ нашел: нужно добавить max-age=-1
Это же сервер делает. Т.е он сразу говорит - не посылай мне этот кукис назад. А какой смысл тогда его отправлять браузеру?
Из браузера изменить max-age нельзя

Добавлено через 1 минуту
Цитата Сообщение от 755 Посмотреть сообщение
но, если правильно предполагаю - сессионные куки изменить сложно, учитывая их ограниченный срок?
Ну вообще то они сделаны так, что их не только изменить, но даже прочитать в браузере невозможно.

Добавлено через 46 секунд
Цитата Сообщение от 755 Посмотреть сообщение
Поэтому и не вижу необходимости в установке запрета httpOnly.
Ну тогда это не сессионные кукисы, а обычные.
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 09:04  [ТС]
Цитата Сообщение от voraa Посмотреть сообщение
Ну тогда это не сессионные кукисы, а обычные.
Получается, неверно понял признак сессионных от обычных - считал, что отсутствие max-age является признаком сессионных кук.
"По умолчанию, если куки не имеют ни одного из этих параметров, то они удалятся при закрытии браузера. Такие куки называются сессионными («session cookies»)" https://learn.javascript.ru/cookie

Цитата Сообщение от voraa Посмотреть сообщение
Это же сервер делает. Т.е он сразу говорит - не посылай мне этот кукис назад. А какой смысл тогда его отправлять браузеру?
Из браузера изменить max-age нельзя
Но у меня почему-то получилось их удалить (?):
JavaScript
1
2
3
4
5
6
7
8
9
10
function g_kukSave ()   {
  p_nam= "Вася";
  document.cookie = "name="+ p_nam; 
  inf2.innerHTML = "<br> SAVE kuk name"
}
 
function g_kukDel ()    {
 document.cookie = "name=John; max-age=-1";
 inf2.innerHTML = "<br> DELETE kuk name"
}
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3843 / 1693 / 431
Регистрация: 14.03.2022
Сообщений: 4,330
10.07.2025, 09:36
Цитата Сообщение от 755 Посмотреть сообщение
Но у меня почему-то получилось их удалить (?):
JavaScript
1
document.cookie = "name=John; max-age=-1";
Это самые обычные куки...
https://learn.javascript.ru/cookie

Добавлено через 3 минуты
755, а есть еще HTTP-куки https://developer.mozilla.org/... es/Cookies
Сессионные cookie
Простой cookie, пример которого приведён выше, представляет собой сессионный cookie (session cookie) - такие cookie удаляются при закрытии клиента, то есть существуют только на протяжении текущего сеанса, поскольку атрибуты Expires или Max-Age для него не задаются. Однако, если в браузере включено автоматическое восстановление сеанса, что случается очень часто, cookie сеанса может храниться постоянно, как если бы браузер никогда не закрывался.
Добавлено через 1 минуту
755, пугаешь людей терминами...
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 09:46  [ТС]
krvsa, пусть это будут самые обычные куки (кстати и у меня сейчас после ваших комментариев такое же объяснение)

но там же написано (и это мне непонятно):
Цитата Сообщение от 755 Посмотреть сообщение
если куки не имеют ни одного из этих параметров, то они удалятся при закрытии браузера. Такие куки называются сессионными («session cookies»
Но в моме примере:
JavaScript
1
document.cookie = "name=Вася";
- у данного оператора не указана дата удаления - должны быть удалены при закрытии браузера, но у меня не удаляются. Одно из объяснений, что именно постоянные (хотя это противоречит указанному источнику, а данный источник вызывает доверие). Поэтому я думал ранее, что причина не удаления в настройках браузера.
0
Эксперт .NET
 Аватар для Usaga
14313 / 9393 / 1355
Регистрация: 21.01.2016
Сообщений: 35,424
10.07.2025, 09:51
755, а если немного абстрагироваться от технических особенностей кукисов, то вопрос про них откуда? У меня сформировалось смутное ощущение, что ты их или не по назначению собрался использовать, или ещё что-то неуместное про них задумал...
1
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 09:58  [ТС]
krvsa, именно это объяснение и видел:
Цитата Сообщение от krvsa Посмотреть сообщение
Однако, если в браузере включено автоматическое восстановление сеанса, что случается очень часто, cookie сеанса может храниться постоянно
Но как раз в этом источнике и относят данные куки к Сессионным, хотя они и сохраняются в компьютере.

Поэтому не пугаю, а пытаюсь разобраться: постоянные они или сессионные.

Почему это важно - если они сессионные, то, возможно и быстрей всего хранятся в памяти компьютера, т.е. отличаются способом хранения информации, а на мой взгляд это является их заметным плюсом.
0
Эксперт .NET
 Аватар для Usaga
14313 / 9393 / 1355
Регистрация: 21.01.2016
Сообщений: 35,424
10.07.2025, 10:16
Цитата Сообщение от 755 Посмотреть сообщение
быстрей всего хранятся в памяти компьютера
"скорость" хранения кукисов в браузере - самое последнее, что влияет на производительность странички... Ты задумал упреждающую оптимизацию ещё до замеров и сборов метрик?)
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 10:25  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
то вопрос про них откуда? У меня сформировалось смутное ощущение, что ты их или не по назначению собрался использовать, или ещё что-то неуместное про них задумал...
Usaga, если рассматривать виды назначений, которые упоминаются в различных источниках, то быстрей всего ответ да. Есть такая цитата: все говорят этого нельзя, но оказывается кто-то один, "более умный", который говорит можно.

Если же серьезно, и сам пока не решил, стоит оно того или нет: один массив с информацией передаю на сервер через аякс. Другой массив (может и не быть) - в моем случае список id записей можно передать также через аякс. Но при этом массивы надо объединять. И не проще ли его передать через куки ? На мой взгляд - данный вариант минимум не хуже (если обсуждаемые куки являются сессионными)

Добавлено через 5 минут
Цитата Сообщение от Usaga Посмотреть сообщение
Ты задумал упреждающую оптимизацию ещё до замеров и сборов метрик?
Даже не знаю, но понял, что надо продумать по возможности заранее алгоритм хранения и получения информации: [куки], localStorage, indexedDB, sql.
И, если можно оптимизировать сразу (без всяких замеров), почему бы и нет
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3843 / 1693 / 431
Регистрация: 14.03.2022
Сообщений: 4,330
10.07.2025, 10:29
755, есть куки document.cookie, а есть http куки. Таки это разный "вид" кук.

Судя по твоим примерам, ты используешь обычные "браузерные" куки. Зачем ты это делаешь - отдельная тема.
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 10:33  [ТС]
Цитата Сообщение от krvsa Посмотреть сообщение
Судя по твоим примерам, ты используешь обычные "браузерные" куки. Зачем ты это делаешь - отдельная тема.
krvsa, видимо да, но это быстрей всего от непонимания. Хотя этот вид кукис пока меня привлек - в браузере их создаю, на сервере принимаю - кажется логичным и удобным
0
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3843 / 1693 / 431
Регистрация: 14.03.2022
Сообщений: 4,330
10.07.2025, 10:45
Цитата Сообщение от 755 Посмотреть сообщение
в браузере их создаю, на сервере принимаю
Для передачи данных на сервер браузерные куки не нужны. Данные можно передать в самом запросе...

Добавлено через 8 минут
Прошу прощения.
755, речь идет вот об этом? Может это я затупил и не в ту сторону гребу...

expires, max-age
По умолчанию, если куки не имеют ни одного из этих параметров, то они удалятся при закрытии браузера. Такие куки называются сессионными («session cookies»).
https://learn.javascript.ru/cookie#expires-max-age
0
Эксперт .NET
 Аватар для Usaga
14313 / 9393 / 1355
Регистрация: 21.01.2016
Сообщений: 35,424
10.07.2025, 10:53
Цитата Сообщение от 755 Посмотреть сообщение
И не проще ли его передать через куки ?
Нет. Потому, что куки не для передачи данных пользовательских. А для хранения небольшого количества сессионных данных, которые с пользователем сервер связывает.

Я же не просто так сказал, что чувствую попытку использовать куки не по назначению.
1
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 10:55  [ТС]
Цитата Сообщение от krvsa Посмотреть сообщение
Данные можно передать в самом запросе...
krvsa, правильно ли понял, если передаю через аякс, то данные указываются в запросе xmlHttp.send(params) ?
Если да, то и передаю таким образом, но подумал, что при большом объеме информации, не лучше ли будет распределить ее (информацию) ?
0
Эксперт .NET
 Аватар для Usaga
14313 / 9393 / 1355
Регистрация: 21.01.2016
Сообщений: 35,424
10.07.2025, 10:59
Цитата Сообщение от 755 Посмотреть сообщение
что при большом объеме информации, не лучше ли будет распределить ее (информацию) ?
Т.е. 1Мб данных "распределённый" между разными запросами, по твоему, будет в сумме меньше трафика занимать?
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 11:01  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Потому, что куки не для передачи данных пользовательских. А для хранения небольшого количества сессионных данных
Извините, Usaga, согласно информации примерный мах размер куки 5Кб. Если взять массив с запасом скажем на 200 элементов по 5 байтов получается примерно только 1Кб.
Мах размер далеко не превышен и что мешает их отправить? Будут какие-то задержки?
0
Эксперт .NET
 Аватар для Usaga
14313 / 9393 / 1355
Регистрация: 21.01.2016
Сообщений: 35,424
10.07.2025, 11:02
Цитата Сообщение от 755 Посмотреть сообщение
Даже не знаю, но понял, что надо продумать по возможности заранее алгоритм хранения и получения информации: [куки], localStorage, indexedDB, sql.
И, если можно оптимизировать сразу (без всяких замеров), почему бы и нет
Мне видится, что в силу малой компетенции ты пытаешься найти неизвестное решение неизвестной тебе проблемы, которой ещё нет.

Почему бы, вместо вот этих вот мытарств, не почитать какой-нибудь учебник и не поизучать существующие практики? Ты же не думаешь, что являешься пионеров веб-разработки и первый из людей на планете столкнулся (а пока не столкнулся) с вопросами этими?
0
-62 / 2 / 0
Регистрация: 12.11.2020
Сообщений: 407
10.07.2025, 11:04  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Т.е. 1Мб данных "распределённый" между разными запросами, по твоему, будет в сумме меньше трафика занимать?
Не о том - два разных массива, чтобы передать в одном запросе аякс (если не ошибаюсь) надо объединить в один. Это несложно сделать, но зачем, если их можно передать раздельно ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.07.2025, 11:04
Помогаю со студенческими работами здесь

Особенности работы скриптов
Добрый вечер. Сегодня начал изучать JavaScript, сразу же наткнулся на некоторые трудности. ...

В чем особенность сайта на яваскрипт
Для чего делается сайт исключительно на яваскрипт? какие у него преимущества?

Интересная особенность с bold()
Вот наткнулся на интересную особенность, которой пока не могу найти внятного объяснения. Дело в...

Особенности массива элементов DOM
Всем привет. У меня тут интересная ситуация возникла, никогда бы не подумал, что такое может быть....

Особенности onclick
Добрый день, возник такой вопрос. Простой скрипт добавляющий ширину к контейнеру по нажатию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru