Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class HttpURLPermission extends Permission
url
Строка url также используется, чтобы инстанцировать a URI
объект, который используется для сравнения с другими экземплярами HttpURLPermission. Поэтому, любые ссылки в этой спецификации к url, имейте в виду этот объект URI. Компонент пути url включает последовательность сегментов пути, разделенных '/' символы. Путь определяется похожим способом к пути в FilePermission
. Есть три различных пути как следующее шоу в качестве примера:
url в качестве примера | Описание |
---|---|
http://www.oracle.com/a/b/c.html | url, который идентифицирует определенный (единственный) ресурс |
http://www.oracle.com/a/b/* | '*' символ обращается ко всем ресурсам в том же самом "каталоге" - другими словами все ресурсы с тем же самым числом компонентов пути, и которые только отличаются по заключительному компоненту пути, представленному '*'. |
http://www.oracle.com/a/b/ - | '-' символ обращается ко всем ресурсам рекурсивно ниже предыдущего пути (eg. http://www.oracle.com/a/b/c/d/e.html соответствия этот пример). |
'*' и '-' может только быть определен в заключительном сегменте пути и должен быть единственный символ в том сегменте. Любой запрос или компоненты фрагмента url игнорируются, создавая HttpURLPermissions.
Как особый случай, URL формы, "http:*" или "https: *", как принимают, означают любой url данной схемы.
Строка действий
Строка действий HttpURLPermission является связью списка метода и списка заголовков запроса. Они - списки разрешенных методов запроса HTTP и разрешенные заголовки запроса разрешения (соответственно). Два списка разделяются двоеточием ':' символ и элементы каждого списка являются разделенной запятой. Некоторые примеры:
"POST,GET,DELETE" "GET:X-Foo-Request,X-Bar-Request" "POST,GET:Header1,Header2"Первый пример определяет методы: POST, ПОЛУЧИТЕ и УДАЛИТЕ, но никакие заголовки запроса. Второй пример определяет один метод запроса и два заголовка. Третий пример определяет два метода запроса, и два заголовка.
Разделитель двоеточия не должен присутствовать, если список заголовков запроса пуст. Никакой пробел не разрешается в строке действий. Строки действия, предоставленные конструкторам HttpURLPermission, являются нечувствительными к регистру и нормализуются, преобразовывая имена методов в верхний регистр, и имена заголовка к форме определяет в RFC2616 (нижний регистр с первой буквой каждого использованного для своей выгоды слова). Или список может содержать подстановочный знак '*' символ, который показывает все методы запроса или заголовки соответственно.
Отметить. В зависимости от контекста использования некоторые методы запроса и заголовки могут быть разрешены всегда, и другим нельзя разрешить никогда. Например, обработчик протокола HTTP мог бы отвергнуть определенные заголовки такой как Длиной до контента от того, чтобы быть установленным кодом программы, независимо от ли политика безопасности в силе, разрешения это.
Конструктор и Описание |
---|
HttpURLPermission(String url)
Создает HttpURLPermission с данной строкой url и неограниченными методами и заголовками запроса, вызывая двух конструкторов параметра следующим образом: HttpURLPermission (url, "*: *")
|
HttpURLPermission(String url, String actions)
Создает новый HttpURLPermission из строки url и который разрешает данные методы запроса и устанавливаемые пользователем заголовки запроса.
|
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
equals(Object p)
Возвращает true, если, this.getActions ().equals (p.getActions) и url p равняется, это - url.
|
Строка |
getActions()
Возвращает нормализованный список метода и список заголовка запроса, в форме:
|
int |
hashCode()
Возвращает хэш-код, вычисленный из хэш-кода Строки действий и url
|
boolean |
implies(Permission p)
Проверки, если этот HttpURLPermission подразумевает данное разрешение.
|
checkGuard, getName, newPermissionCollection, toString
public HttpURLPermission(String url, String actions)
url
- строка urlactions
- строка действийIllegalArgumentException
- если url не приводит к допустимому URI
, его схема не является http или https, или если действия содержат пробел.public HttpURLPermission(String url)
IllegalArgumentException
- если url не приводит к допустимому URI
public String getActions()
"method-names : header-names"
где имена методов являются списком методов, разделенных запятыми, и имена заголовка список разрешенных заголовков, разделенных запятыми. В возвращенной Строке нет никакого пробела. Если имена заголовка будут пусты тогда, то разделитель двоеточия не будет присутствовать.
getActions
в class Permission
public boolean implies(Permission p)
Некоторые примеры того, как пути являются соответствующими, показывают ниже:
это - путь | путь p | соответствие |
---|---|---|
/a/b | /a/b | да |
/a/b/* | /a/b/c | да |
/a/b/* | /a/b/c/d | нет |
/a/b/- | /a/b/c/d | да |
/a/b/- | /a/b/c/d/e | да |
/a/b/- | /a/b/c/* | да |
/a/b/* | /a/b/c/- | нет |
implies
в class Permission
p
- разрешение, чтобы проверить по.public boolean equals(Object p)
equals
в class Permission
p
- объект мы тестируем на равенство с этим объектом.Object.hashCode()
, HashMap
public int hashCode()
hashCode
в class Permission
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92