Spec-Zone.ru › Yii 2.0

Класс yii\filters\VerbFilter

Все классы | Свойства | Методы
Наследование yii\filters\VerbFilter » yii\base\Behavior » yii\base\Object
Реализует yii\base\Configurable
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/filters/VerbFilter.php

VerbFilter — это фильтр действий, который фильтрует по методам HTTP-запроса.

Он позволяет определять разрешённые методы HTTP-запроса для каждого действия и будет генерировать ошибку HTTP 405, когда метод не разрешён.

Чтобы использовать VerbFilter, объявите его в методе behaviors() вашего класса контроллера. Например, следующие объявления определят типичный набор разрешённых методов запроса для действий REST CRUD.

public function behaviors()
{
    return [
        'verbs' => [
            'class' => \yii\filters\VerbFilter::className(),
            'actions' => [
                'index'  => ['get'],
                'view'   => ['get'],
                'create' => ['get', 'post'],
                'update' => ['get', 'put', 'post'],
                'delete' => ['post', 'delete'],
            ],
        ],
    ];
}

См. также http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.7.

Публичные свойства

Свойство Тип Описание Определено в
$actions массив Это свойство определяет разрешённые методы запроса для каждого действия. yii\filters\VerbFilter
$owner yii\base\Component|null Владелец данного поведения yii\base\Behavior

Публичные методы

Метод Описание Определено в
__call() Вызывает метод, который не является методом класса. yii\base\Object
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
attach() Прикрепляет объект поведения к компоненту. yii\base\Behavior
beforeAction() yii\filters\VerbFilter
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
detach() Открепляет объект поведения от компонента. yii\base\Behavior
events() Объявляет обработчики событий для событий $owner. yii\filters\VerbFilter
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует объект. yii\base\Object

Подробности свойств

$actions общедоступное свойство

Это свойство определяет разрешённые методы запроса для каждого действия. Для каждого действия, которое должно поддерживать ограниченный набор методов запроса, вы добавляете запись с идентификатором действия в качестве ключа массива и массивом разрешённых методов (например, GET, HEAD, PUT) в качестве значения. Если действие не указано, все методы запроса считаются разрешёнными.

Вы можете использовать '*' для обозначения всех действий. Когда действие явно указано, оно имеет приоритет над указанием, данным '*'.

Например,

[
  'create' => ['get', 'post'],
  'update' => ['get', 'put', 'post'],
  'delete' => ['post', 'delete'],
  '*' => ['get'],
]
public array $actions = []

Подробности методов

beforeAction() общедоступный метод

public boolean beforeAction ( $event )
$event yii\base\ActionEvent
throws yii\web\MethodNotAllowedHttpException

если метод запроса не разрешён.

events() общедоступный метод

Объявляет обработчики событий для событий $owner.

public массив events ( )
return массив

События (ключи массива) и соответствующие методы обработчиков событий (значения массива).

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-filters-verbfilter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API