API:Data formats/ru

From MediaWiki.org
Jump to: navigation, search

[edit] API:Форматы данных

Tools clipart.png Эта страница является частью документации по MediaWiki API.
Язык: English  • Deutsch • Español • Français • 日本語 • 한국어 • Русский • Українська
MediaWiki API


MediaWiki API поддерживает несколько основных форматов вывода (XML, JSON, YAML, ...), а так же некоторые специальные форматы (RSS, ...) для специальных модулей.

Если не указано обратное, все модули позволяют получить вывод во всех основных форматах. Для упрощения отладки, некоторые форматы имеют альтернативы для печати в HTML с суффиксом 'fm'. По умолчанию используется формат xmlfm.

Код Описание Параметры
json JSON callback (необяз.): оборачивает вывод в вызов требуемой функции
jsonfm JSON (HTML) callback (необяз.): оборачивает вывод в вызов требуемой функции
php сериализованный PHP
phpfm сериализованный PHP (HTML)
wddx WDDX
wddxfm WDDX (HTML)
xml XML
xmlfm XML (HTML)
yaml YAML
yamlfm YAML (HTML)
rawfm JSON с элементами отладки (HTML) callback (opt): оборачивает вывод в вызов требуемой функции

[edit] Примеры

XML

<?xml version="1.0" encoding="utf-8"?>
<api>
  <query>
    <pages>
      <page pageid="736" ns="0" title="Albert Einstein" touched="2007-07-06T04:37:30Z" lastrevid="142335140" counter="4698" length="86906" />
    </pages>
  </query>
</api>

JSON

{
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "touched": "2007-07-06T04:37:30Z",
                "lastrevid": 142335140,
                "counter": 4698,
                "length": 86906
            }
        }
    }
}

YAML

---
query: 
  pages: 
    - 
      pageid: 736
      ns: 0
      title: Albert Einstein
      touched: 2007-07-06T04:37:30Z
      lastrevid: 142335140
      counter: 4698
      length: 86906

WDDX

<?xml version="1.0" encoding="utf-8"?>
<wddxPacket version="1.0">
  <header/>
  <data>
    <struct>
      <var name="query">
        <struct>
          <var name="pages">
            <struct>
              <var name="736">
                <struct>
                  <var name="pageid">
                    <number>736</number>
                  </var>
                  <var name="ns">
                    <number>0</number>
                  </var>
                  <var name="title">
                    <string>Albert Einstein</string>
                  </var>
                  <var name="touched">
                    <string>2007-07-06T04:37:30Z</string>
                  </var>
                  <var name="lastrevid">
                    <number>142335140</number>
                  </var>
                  <var name="counter">
                    <number>4698</number>
                  </var>
                  <var name="length">
                    <number>86906</number>
                  </var>
                </struct>
              </var>
            </struct>
          </var>
        </struct>
      </var>
    </struct>
  </data>
</wddxPacket>

PHP (добавлены переносы строк для удобства)

a:1:{s:5:"query";a:1:{s:5:"pages";a:1:{i:736;a:7:{s:6:"pageid";i:736;s:2:"ns";i:0;s:5:"title";s:15:"Albert Einstein";
s:7:"touched";s:20:"2007-07-06T04:37:30Z";s:9:"lastrevid";i:142335140;s:7:"counter";i:4698;s:6:"length";i:86906;}}}}
Personal tools
Namespaces
Variants
Actions
Site
Support
Download
Development
Communication
Print/export
Toolbox