Здравствуйте, Лазар Бешкенадзе, Вы писали:
ЛБ>и пример:
ЛБ>
ЛБ> == Server -> User Agent ==
ЛБ> Set-Cookie: lang=; Expires=Sun, 06 Nov 1994 08:49:37 GMT
ЛБ>
(в данном примере удалится только одна кука lang, все остальные останутся нетронуты)
ЛБ>Почему недостаточно установить пустую cookie? Для чего еще срок годности выставлять в прошлое?
Для немедленного удаления, иначе оно (пусть и пустое) будет хранится до max-age, или на усмотрение браузера "до конца сеанса" (некоторые браузеры не считают "концом сеанса" не только закрытие вкладки но даже и закрытие самого браузера.)
Иногда само наличие куки (пусть и пустой) позволяет "сделать выводы".
Здравствуйте, Лазар Бешкенадзе, Вы писали:
ЛБ>Чем устраивать комедию со сроком годности в прошлом лучше бы установили что "Set-Cookie: lang=" удаляет ее.
Гугл говорит, что можно задавать куку без значения, можно даже без имени (кстати с именем и без равно тоже можно, аналог первого случая). Но не стоит делать ни первое, ни тем более второе, т.к. может привести к непредсказуемому поведению в зависимости от браузера в первом случае (хотя, можно придумать случаи, когда пригодится значение "Пустая строка") и к уязвимостям во втором. Но даже при удалении рекомендуют с кукой после "равно" передавать какое-нибудь нейтральное значение.
SK>>Иногда само наличие куки (пусть и пустой) позволяет "сделать выводы".
ЛБ>Чем устраивать комедию со сроком годности в прошлом лучше бы установили что "Set-Cookie: lang=" удаляет ее.
Это тяжкое наследие IE <5.0 и миллионов сайтов (best view in IE), которые никто переделывать не будет.