|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class HttpCookie extends Object implements Cloneable
Есть 3 http спецификации cookie:
Проект Netscape
RFC 2109 -
RFC 2965 -
Класс HttpCookie может принять все эти 3 формы синтаксиса.
| Конструктор и Описание |
|---|
HttpCookie(String name, String value)
Создает cookie с указанным именем и значением.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
Объект |
clone()
Создайте и возвратите копию этого объекта.
|
static boolean |
domainMatches(String domain, String host)
Служебный метод, чтобы проверить, является ли имя хоста в домене или нет.
|
boolean |
equals(Object obj)
Протестируйте равенство двух http cookie.
|
Строка |
getComment()
Возвращает комментарий, описывающий цель этого cookie, или
null если у cookie нет никакого комментария. |
Строка |
getCommentURL()
Возвращает url комментария, описывающий цель этого cookie, или
null если у cookie нет никакого url комментария. |
boolean |
getDiscard()
Возвратите атрибут отбрасывания cookie
|
Строка |
getDomain()
Возвращает набор доменного имени для этого cookie.
|
long |
getMaxAge()
Возвращает максимальный возраст cookie, определенного в секундах.
|
Строка |
getName()
Возвращает имя cookie.
|
Строка |
getPath()
Возвращает путь на сервере, которому браузер возвращает этот cookie.
|
Строка |
getPortlist()
Возвратите атрибут списка порта cookie
|
boolean |
getSecure()
Возвраты
true если отправка этого cookie должна быть ограничена безопасному протоколу, или false если это может быть отправлено, используя какой-либо протокол. |
Строка |
getValue()
Возвращает значение cookie.
|
int |
getVersion()
Возвращает версию протокола, который выполняет этот cookie.
|
boolean |
hasExpired()
Отчеты, истек ли этот http cookie или нет.
|
int |
hashCode()
Возвратите хэш-код этого http cookie.
|
boolean |
isHttpOnly()
Возвраты
true если этот cookie содержит атрибут HttpOnly. |
static List<HttpCookie> |
parse(String header)
Cookie конструкций от cookie набора или строки заголовка набора-cookie2.
|
void |
setComment(String purpose)
Определяет комментарий, который описывает цель cookie.
|
void |
setCommentURL(String purpose)
Определяет url комментария, который описывает цель cookie.
|
void |
setDiscard(boolean discard)
Определите, должен ли агент пользователя отбросить cookie безоговорочно.
|
void |
setDomain(String pattern)
Определяет домен, в пределах которого должен быть представлен этот cookie.
|
void |
setHttpOnly(boolean httpOnly)
Указывает, нужно ли cookie считать HTTP Только.
|
void |
setMaxAge(long expiry)
Устанавливает максимальный возраст cookie в секундах.
|
void |
setPath(String uri)
Определяет путь для cookie, которому клиент должен возвратить cookie.
|
void |
setPortlist(String ports)
Определите portlist cookie, который ограничивает порт (ы), к которому cookie можно отослать назад в заголовке Cookie.
|
void |
setSecure(boolean flag)
Указывает, должен ли cookie только быть отправлен, используя безопасный протокол, такой как HTTPS или SSL.
|
void |
setValue(String newValue)
Присваивает новое значение cookie после того, как cookie создается.
|
void |
setVersion(int v)
Устанавливает версию протокола cookie, который выполняет этот cookie.
|
Строка |
toString()
Создает строковое представление заголовка cookie этого cookie, который находится в формате, определенном соответствующей спецификацией cookie, но без ведущего "Cookie:" маркер.
|
public HttpCookie(String name, String value)
Имя должно соответствовать RFC 2965. Это означает, что может содержать только алфавитно-цифровые символы ASCII и не может содержать запятые, точки с запятой, или пробел или начаться с символа $. Название cookie не может быть изменено после создания.
Значение может быть чем-либо, что сервер хочет отправлять. Его значение имеет, вероятно, интерес только для сервера. Значение cookie может быть изменено после создания с setValue метод.
По умолчанию cookie создаются согласно спецификации cookie RFC 2965. Версия может быть изменена с setVersion метод.
name - a String определение имени cookievalue - a String определение значения cookieIllegalArgumentException - если имя cookie содержит запрещенные символы, или это - один из маркеров, зарезервированных для использования протоколом cookieNullPointerException - если name является nullsetValue(java.lang.String), setVersion(int)public static List<HttpCookie> parse(String header)
header - String, определяющий заголовок cookie набора. Заголовок должен запуститься с "cookie набора", или маркера "набора-cookie2"; или у этого не должно быть никакого ведущего маркера вообще.IllegalArgumentException - если строка заголовка нарушает синтаксис спецификации cookie, или имя cookie содержит llegal символы, или имя cookie является одним из маркеров, зарезервированных для использования протоколом cookieNullPointerException - если строкой заголовка является nullpublic boolean hasExpired()
public void setComment(String purpose)
purpose - a String определение комментария, чтобы вывести на экран пользователюgetComment()public String getComment()
null если у cookie нет никакого комментария.String содержа комментарий, или null если ни одинsetComment(java.lang.String)public void setCommentURL(String purpose)
purpose - a String определение url комментария, чтобы вывести на экран пользователюgetCommentURL()public String getCommentURL()
null если у cookie нет никакого url комментария.String содержа url комментария, или null если ни одинsetCommentURL(java.lang.String)public void setDiscard(boolean discard)
discard - true указывает, чтобы отбросить cookie безоговорочноgetDiscard()public boolean getDiscard()
setDiscard(boolean)public void setPortlist(String ports)
ports - String определяет список порта, который является запятой seperated серия цифрgetPortlist()public String getPortlist()
setPortlist(java.lang.String)public void setDomain(String pattern)
Форма доменного имени определяется RFC 2965. Доменное имя начинается с точки (.foo.com) и средства, что cookie видим к серверам в указанной Системе доменных имен (DNS) зона (например, www.foo.com, но нет a.b.foo.com). По умолчанию cookie только возвращаются к серверу, который отправил им.
pattern - a String содержа доменное имя, в пределах которого этот cookie видим; форма согласно RFC 2965getDomain()public String getDomain()
String содержа доменное имяsetDomain(java.lang.String)public void setMaxAge(long expiry)
Положительное значение указывает, что cookie истечет после этого много секунд передали. Отметьте, что значение является максимальным возрастом, когда cookie истечет, не текущий возраст cookie.
Отрицательная величина означает, что cookie постоянно не сохранен и будет удален, когда Веб-браузер выходит. Нулевое значение заставляет cookie быть удаленным.
expiry - целое число, определяющее максимальный возраст cookie в секундах; если нуль, cookie должен быть сразу отброшен; иначе, максимальный возраст cookie является неуказанным.getMaxAge()public long getMaxAge()
-1 указание на cookie сохранится до завершения работы браузера.setMaxAge(long)public void setPath(String uri)
cookie видим ко всем страницам в каталоге, который Вы определяете, и все страницы в подкаталогах того каталога. Путь cookie должен включать сервлет, которые устанавливают cookie, например, / каталог, который делает cookie видимым ко всем каталогам на сервере в соответствии с / каталогом.
Консультируйтесь с RFC 2965 (доступный в Интернете) для получения дополнительной информации об установке путей для cookie.
uri - a String определение путиgetPath()public String getPath()
String определяя путь, который содержит имя сервлета, например, / каталогsetPath(java.lang.String)public void setSecure(boolean flag)
Значение по умолчанию false.
flag - Если true, cookie может только быть отправлен по безопасному протоколу как https. Если false, это может быть отправлено по любому протоколу.getSecure()public boolean getSecure()
true если отправка этого cookie должна быть ограничена безопасному протоколу, или false если это может быть отправлено, используя какой-либо протокол.false если cookie может быть отправлен по какому-либо стандартному протоколу; иначе, truesetSecure(boolean)public String getName()
String определение имени cookiepublic void setValue(String newValue)
С cookie Версии 0 значения не должны содержать пробел, скобки, круглые скобки, равняется знакам, запятые, двойные кавычки, наклонные черты, вопросительные знаки, знаки at signs, двоеточия, и точки с запятой. Пустые значения, возможно, не ведут себя тот же самый путь на всех браузерах.
newValue - a String определение нового значенияgetValue()public String getValue()
String содержа текущую стоимость cookiesetValue(java.lang.String)public int getVersion()
setVersion(int)public void setVersion(int v)
v - 0, если cookie должен выполнить исходную спецификацию Netscape; 1, если cookie должен выполнить RFC 2965/2109IllegalArgumentException - если v не ни 0, ни 1getVersion()public boolean isHttpOnly()
true если этот cookie содержит атрибут HttpOnly. Это означает, что cookie не должен быть доступным для механизмов выполнения сценариев, как javascript.true если этот cookie нужно считать http только.setHttpOnly(boolean)public void setHttpOnly(boolean httpOnly)
true это означает, что cookie не должен быть доступным для механизмов выполнения сценариев как javascript.httpOnly - если true сделайте cookie HTTP только, то есть только видимый как часть запроса HTTP.isHttpOnly()public static boolean domainMatches(String domain, String host)
Это понятие описывается в спецификации cookie. Чтобы понять понятие, некоторая терминология должна быть определена сначала:
эффективное имя хоста = имя хоста, если имя хоста содержит точку
или = hostname.local, если нет
Разместите узел доменных соответствий имени А Б если:
- их строковая строка имени хоста - сравнивается равный; или
- A является строкой HDN и имеет форму NB, где N является строкой непустого названия, у B есть форма.B', и B' является строкой HDN. (Так, x.y.com доменные соответствия .Y.com, но не Y.com.)
Узел не находится в домене (секунда RFC 2965. 3.3.2), если:
- Значение для Доменного атрибута не содержит встроенных точек, и значение не является.local.
- Эффективное имя хоста, которое происходит из узла запроса, не делает доменного соответствия Доменный атрибут.
- Узел запроса является HDN (не IP-адрес) и имеет HD формы, где D является значением Доменного атрибута, и H является строкой, которая содержит одну или более точек.
Примеры:
- Набор-Cookie2 от узла запроса y.x.foo.com к Domain=.foo.com был бы отклонен, потому что H является y.x и содержит точку.
- Набор-Cookie2 от узла запроса x.foo.com к Domain=.foo.com был бы принят.
- Набор-Cookie2 с Domain=.com или Domain=.com., будет всегда отклоняться, потому что нет никакой встроенной точки.
- Набор-Cookie2 с Domain=ajax.com будет принят, и значение для Домена будет принято, чтобы быть .ajax.com, потому что точка предварительно ожидается к значению.
- Набор-Cookie2 от примера узла запроса для Домена =. локальный будет принят, потому что эффективное имя хоста для запроса - узел является example.local, и example.local доменными соответствиями.local.
domain - доменное имя, чтобы проверить имя хоста сhost - рассматриваемое имя хостаpublic String toString()
public boolean equals(Object obj)
Результатом является true, только если два cookie, прибывшие от того же самого (нечувствительного к регистру) домена, имейте то же самое (нечувствительное к регистру) имя, и имейте тот же самый (чувствительный к регистру) путь.
equals в классе Objectobj - ссылочный объект, с которым можно сравниться.Object.hashCode(), HashMappublic int hashCode()
getName ().toLowerCase ().hashCode ()
+ getDomain ().toLowerCase ().hashCode ()
+ getPath ().hashCode ()
hashCode в классе ObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)
Для дальнейшей ссылки API и документации разработчика, см. . Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.