Manual:ApiBase.php/zh
![]() | 此頁面已过时。 |
ApiBase.php | |
---|---|
位置: | includes/api/ |
master • 1.43.1 • 1.42.6 • 1.39.12 | |
MediaWiki\Api\ApiBase |
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, and PARAM_RANGE_ENFORCE這些常數。可能的參數類型有NULL、字串、整數、限制、布林值、時間戳記、使用者、或上傳。「user」參數是使用Title::makeTitleSafe()
驗證的使用者名稱。對於布林參數,其預設值是除了「false」以外都不允許使用的。
示例:
// Title parameter.
public function getAllowedParams() {
return array(
'title' => array (
ParamValidator::PARAM_TYPE => 'string',
ParamValidator::PARAM_REQUIRED => true
),
);
}
getResultProperties()与getFinalResultProperties()
TODO:描述一下这些是做什么的
getResult()
取得API結果(見手册:ApiResult.php )。
钩子
此檔案所呼叫的钩子,被列在Category:MediaWiki hooks included in ApiBase.php 類別之中。