API:Login/ru

From MediaWiki.org

Jump to: navigation, search

[edit] API:Вход и создание учётных записей

Эта страница является частью документации по MediaWiki API.
MediaWiki API


Login принимает несколько токенов, требуемых сервером для распознавания вошедшего пользователя. В каждом вызове к api.php должны передаваться три значения: либо через дополнительные параметры запроса, либо в виде cookie в заголовке запроса. Если любое из значений для входа передаётся как часть запроса, то все значения в cookie игнорируются. Обратите внимание, что имя пользователя передаётся как lgname, но возвращается нормализованным в lgusername. Первый параметр используется для аутентификации, а второй может передаваться вместе с lgtoken и lguserid как токенами при совершении вызовов других модулей.

Замечание: В этом и других примерах все параметры передаются в запросе GET лишь для простоты. В вашем приложении постарайтесь делать так, чтобы все большие по размеру и/или требующие безопасности параметры передавались в запросах POST.

Logging in

api.php ? action=login & lgname=Yurik & lgpassword=12345 & lgdomain=wikipedia.org

<?xml version="1.0" encoding="utf-8"?>
<api>
  <login
    result="Success"  ''Другие значения: 
NoName, Illegal, WrongPluginPass,''
''NotExists, WrongPass, EmptyPass''
    lguserid="12345"
 ''Также возвращается как cookie (например, ruwikiUserID)''
    lgusername="Yurik"
''Нормализованный lgname, ''
''также возвращается как cookie (например, ruwikiUserName)''
    lgtoken="b5780b6e2f27e20b450921d9461010b4" 
''Также возвращается как cookie (например, ruwikiToken)''
    cookieprefix="enwiki"
    sessionid="08nj1ioefhlvmdjfor5to3mvv5"
  />
</api>

Чтобы использовать эти значения, передавайте их без изменения в любом вызове к api.php дополнительно к другим параметрам. Например, запрос токена отката для Заглавной страницы (запрещённая операция):

api.php ? action=query & lgtoken=123ABC & lgusername=Yurik & lguserid=23456 
                       & prop=info & intokens=rollback & titles=Заглавная страница
Пример
http://ru.wikipedia.org/w/api.php?action=login&lgname=user&lgpassword=password
Важно
В целях безопасности для этого метода поставлена заглушка: после неудачной попытки входа требуется либо войти самостоятельно стандартным способом через Special:Userlogin, либо подождать 60 секунд перед входом через этот модуль. Заглушка включена только на серверах, поддерживающих memcache.
Personal tools