Довідка API MediaWiki
Це автоматично генерована сторінка документації API MediaWiki.
Документація та приклади: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page
action=linkaccount (link)
- Цей модуль вимагає прав на запис.
- Цей модуль приймає лише POST-запити.
- Джерело: MediaWiki
- Ліцензія: GPL-2.0-or-later
Пов'язати обліковий запис третьої сторони з поточним користувачем.
Загальна процедура використання цього модуля така:
- Отримайте доступні поля зі action=query&meta=authmanagerinfo за допомогою amirequestsfor=link, а також токен csrf зі action=query&meta=tokens.
- Передайте ці поля користувачеві, і отримайте інформацію, якою він їх заповнить.
- Напишіть до цього модуля, заповнивши linkreturnurl та всі релевантні поля.
- Перевірте status у відповіді.
- Якщо Ви отримали PASS або FAIL, роботу завершено. Операція або була успішною, або провалилася.
- Якщо Ви отримали UI, надішліть нові поля користувачеві й отримайте інформацію, якою він їх заповнить. Далі напишіть до цього модуля із linkcontinue та заповніть всі реелевантні поля, після чого повторіть крок 4.
- Якщо Ви отримали REDIRECT, направте користувача до redirecttarget і дочекайтеся повернення до linkreturnurl. Тоді напишіть до цього модуля із linkcontinue, та з усіма полями, що були передані до повернутої URL-адреси, після чого повторіть крок 4.
- Якщо Ви отримали RESTART, це означає, що автентифікація спрацювала, але ми не маємо пов'язаного облікового запису користувача. Ви можете розцінити це як UI, або як FAIL.
- linkrequests
Використовувати ці автентифікаційні запити через id, що повертається з action=query&meta=authmanagerinfo за допомогою amirequestsfor=link, або з попередньої відповіді з цього модуля.
- Розділіть значення з допомогою | або альтернативу.
- Максимальна кількість значень — 50 (500 для клієнтів дозволено вищі ліміти).
- linkmessageformat
Формат до використання для повернення повідомлень.
- Одне з наступних значень: html, none, raw, wikitext
- Стандартно: wikitext
- linkmergerequestfields
Об'єднати інформацію всіх автентифікаційних запитів у один масив.
- Тип: логічний (подробиці)
- linkreturnurl
URL-адреса повернення для сторонніх автентифікаційних потоків повинна бути абсолютною. Обов'язковим є це, або linkcontinue.
При отриманні відповіді REDIRECT, найбільш звичною Вашою дією буде відкриття браузерного чи іншого веб-перегляду вказаного URL-посилання для стороннього потоку автентифікації. Коли ця операція буде завершена, стороння програма перенаправить веб-переглядач на цю URL-адресу. Ви повинні видобувати будь-які параметри запитів або POST-параметри із цієї URL-адреси, і передавати їх як запит linkcontinue до цього модуля API.
- linkcontinue
Цей запит є продовженням після попередньої відповіді UI або REDIRECT. Або це, або linkreturnurl є обов'язковим.
- Тип: логічний (подробиці)
- linktoken
Токен «csrf» отримано з action=query&meta=tokens
- Цей параметр є обов'язковим.
- *
- Цей модуль приймає додаткові параметри, залежно від доступних автентифікаційних запитів. Використовуйте action=query&meta=authmanagerinfo за допомогою amirequestsfor=link (або попередню відповідь від цього модуля, якщо це застосовно), аби визначити доступні запити та поля, які вони використовують.
- Почати процес пов'язування з обліковм записом з Example.
- api.php?action=linkaccount&provider=Example&linkreturnurl=http://example.org/&linktoken=123ABC [відкрити в пісочниці]