Руководство:ApiBase.php

This page is a translated version of the page Manual:ApiBase.php and the translation is 100% complete.

Класс ApiBase реализует много основных функций API и является основой всех классов API. Функции класса делятся на несколько групп по применению:

  • Параметры модулей: Производные классы могут определять getAllowedParams(), чтобы указать, какие параметры ожидать, как их разбирать и проверять их правильность.
  • Профилирование: различные методы, позволяющие вести учёт различных задач и их временных затрат
  • Самодокументация: код, позволяющий API документировать своё собственное состояние

Функции

getAllowedParams()

Укажите, какие параметры разрешены и какие требования следует накладывать на них. См. начало документации includes/api/ApiBase.php для просмотра констант PARAM_DFLT, PARAM_ISMULTI, PARAM_TYPE, PARAM_MAX, PARAM_MAX2, PARAM_MIN, PARAM_ALLOW_DUPLICATES, PARAM_DEPRECATED, PARAM_REQUIRED и PARAM_RANGE_ENFORCE. Возможные типы параметров — NULL, string, integer, limit, boolean, timestamp, user или upload. Параметр типа «user» — имя участника, проверяемое с использованием Title::makeTitleSafe(). Для булевых параметров разрешено единственное значение по умолчанию — false.

Пример:

// Title parameter.
public function getAllowedParams() {
        return array(
                'title' => array (
                        ApiBase::PARAM_TYPE => 'string',
                        ApiBase::PARAM_REQUIRED => true
                ),
        );
}

getResultProperties() и getFinalResultProperties()

НУЖНО СДЕЛАТЬ: описать, что они делают

getResult()

Получает результат API (см. Manual:ApiResult.php ).

Привязки

Привязки, вызываемые из этого файла, перечислены в категории Category:MediaWiki hooks included in ApiBase.php .

См. также