quranacademy/mediawiki-sdk

2.3 2021-04-26 13:02 UTC

This package is auto-updated.

Last update: 2024-10-26 20:53:37 UTC


README

Build Status Total Downloads Latest Stable Version License

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, опционально)