quranacademy / mediawiki-sdk
SDK for MediaWiki API
2.3
2021-04-26 13:02 UTC
Requires
- php: >=7.1
- ext-curl: *
- ext-json: *
- symfony/console: ~4.0|~5.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.15
- guzzlehttp/guzzle: ^6.3
- illuminate/contracts: ^6.0
- mikey179/vfsstream: ^1.6
- mockery/mockery: ^1.2
- phpunit/phpunit: ^7.0
README
WARNING: the SDK is not production ready.
MediaWiki SDK - библиотека для работы с API MediaWiki.
Минимальная версия MediaWiki: 1.27+.
Содержание
Установка
Для установки MediaWiki SDK выполните команду:
composer require quranacademy/mediawiki-sdk
Быстрый старт
use MediaWiki\Api\Api; use MediaWiki\Api\Exceptions\ApiException; use MediaWiki\Storage\FileStore; use MediaWiki\HttpClient\CurlHttpClient; $url = 'http://ru.example.com/api.php'; $httpClient = new CurlHttpClient(); $storage = new FileStore(__DIR__.'/storage/cache'); $api = new Api($url, $httpClient, $storage);
Авторизация
$username = 'John@FooBot'; $password = 'pri9l1fl1j315hmp3okbnqspqcgaue1t'; try { $api->login($username, $password); } catch (ApiException $exception) { echo sprintf('MediaWiki API Error: ', $exception->getMessage()); exit; } // bool(true) var_dump($api->isLoggedIn()); // выход $api->logout();
Выполнение запроса
$parameters = [ 'action' => 'query', 'list' => 'allpages', ]; $response = $api->request('POST', $parameters); // или $parameters = [ 'list' => 'allpages', ]; $response = $api->query($parameters); var_dump($response);
Параметры метода request
- method - HTTP-метод (POST/GET)
- parameters - параметры запроса (опционально)
- headers - заголовки запроса (опционально)
- decode - декодирует запрос, если передан параметр
true
(только json, опционально)
Параметры метода query
- parameters - параметры запроса
- decode - декодирует запрос, если передан параметр
true
(только json, опционально)