1. Установить файлы cookie
Скопируйте код кода следующим образом:
Файл cookie cookie = новый файл cookie («ключ», «значение»);
cookie.setMaxAge(60);
Установите время жизни 60 секунд. Если установлено отрицательное значение, это будет файл cookie процесса браузера (сохраняемый в памяти), который станет недействительным при закрытии браузера.
Скопируйте код кода следующим образом:
cookie.setPath("/test/test2");
Установите путь к файлу cookie. Если он не установлен, это будет текущий путь (для сервлета это request.getContextPath() + часть пути к шаблону URL-адреса сервлета, настроенная в web.xml).
Скопируйте код кода следующим образом:
ответ.addCookie(cookie);
2. Чтение файлов cookie
Этот метод может читать все объекты Cookie текущего пути и «прямого родительского пути». Если файлов cookie нет, он вернет значение null.
Скопируйте код кода следующим образом:
Cookie[] cookie = request.getCookies();
3.Удалить файлы cookie
Скопируйте код кода следующим образом:
Cookie cookie = новый Cookie («ключ», ноль);
cookie.setMaxAge(0);
Установите значение 0, чтобы немедленно удалить файл cookie.
Скопируйте код кода следующим образом:
cookie.setPath("/test/test2");
Удалить файлы cookie по указанному пути. Если путь не указан, по умолчанию файлы cookie удаляются по текущему пути.
Скопируйте код кода следующим образом:
ответ.addCookie(cookie);
4. Примечание. Предположим, что структура пути следующая:
Скопируйте код кода следующим образом:
тест/тест2/тест345/тест555/тест666
а. Файлы cookie с одинаковым именем ключа (значения могут быть одинаковыми или разными) могут существовать по разным путям.
б. При удалении, если в текущем пути нет файла cookie с ключом «ключ», будут запрошены все родительские пути, и операция удаления будет выполнена после извлечения (только один родительский путь cookie, ближайший к самому себе, может быть удален по адресу). время)
FF Вы должны указать тот же путь, который использовался для установки файла cookie для удаления файла cookie, а также путь должен быть указан для имени ключа файла cookie независимо от его размеров в верхнем, нижнем регистре или смешанных размерах.
IE. Если имя ключа написано строчными буквами, если текущий путь — /test/test2, если он не найден, выполните запрос /test, /test555, /test345, а если он все еще не найден, запросите /. (/test555/test666 не запрашивается)
Если имя ключа написано в смешанном или верхнем регистре, а путь не указан, текущий путь будет удален по умолчанию, и восходящий запрос выполняться не будет.
c. При чтении файла cookie можно прочитать только файл cookie прямого родительского пути.
Если текущий путь — /test/test2, то считываемый ключ — «ключ». После чтения текущего пути необходимо также прочитать /test, а после чтения /test также необходимо прочитать /.
d. При работе над веб-проектами Java, поскольку обычные веб-серверы (например, Tomcat или Jetty) используют контекст для управления различными веб-приложениями, каждый контекст имеет свой путь.
Будьте особенно осторожны, если на сервере имеется несколько веб-приложений. Не устанавливайте файл cookie с путем /, так как это может привести к неправильной работе. (Конечно, предполагается, что доменные имена одинаковы)