API:Login/es

From MediaWiki.org

Jump to: navigation, search
Tools clipart.png Esta página es parte de la documentación de la API MediaWiki.
API de MediaWiki


action=login envía diversos tokens (identificadores numéricos) que son requeridos por el servidor para reconocer usuarios logueados (logged-in, que iniciaron sesión). In cada llamada a api.php, debe pasarse una cookie creada en esta petición.

Contents

[edit] Ejemplo de petición

Nota: En este ejemplo, todos los parámetros son pasados por el método GET sólo para hacerlo más simple. De todas formas, action=login emplea el método POST; sino se producirá un error. Iniciando sesión

<?xml version="1.0" encoding="utf-8"?>
<api>
  <login
    result="Success"
    lguserid="12345"
    lgusername="Bob"
    lgtoken="b5780b6e2f27e20b450921d9461010b4"
    cookieprefix="eswiki"
    sessionid="08nj1ioefhlvmdjfor5to3mvv5"
  />
</api>

Debe agregarse el parámetro lgdomain, que contiene el nombre de dominio para la autenticación, si estás usando un plug-in de autenticación como el Extension:LDAP Authentication.

[edit] Construyendo la cookie manualmente

Una consulta action=login exitosa debería crear una cookie correcta, pero si no es capaz de procesarla, también puede construirla con los datos devueltos. En el ejemplo anterior, debería crearse la siguiente cookie:

  • eswikiUserName = Bob (del campo lgusername);
  • eswikiUserID = 12345 (del campo lguserid);
  • eswikiToken = b5780b6e2f27e20b450921d9461010b4 (del campo lgtoken);
  • eswiki_session = 08nj1ioefhlvmdjfor5to3mvv5 (del campo sessionid);

Nótese que el prefijo eswiki es diferente para cada wiki, y es tomado del campo cookieprefix.

[edit] Errores

Se informa de los errores a través del campo result, cuyos posibles valores son:

Código de error Motivo del error
NoName No se especificó un nombre de usuario en el parámetro lgname.
Illegal El nombre de usuario provisto en el parámetro lgname no está permitido.
NotExists El nombre de usuario provisto en el parámetro lgname no existe.
EmptyPass No indicó el parámetro lgpassword, o lo dejó vacío.
WrongPass La contraseña provista en el parámetro lgpassword es incorrecta.
WrongPluginPass Lo mismo que WrongPass, devuelto cuando es rechazado por un plug-in de autenticación, en lugar de MediaWiki mismo.
CreateBlocked La wiki intentó crear una nueva cuenta automáticamente, pero la dirección IP fue bloqueada para crear cuentas.
NeedToWait El tiempo que debe esperar todavía no expiró. Véase throttling.

[edit] Throttling

Por razones de seguridad, el módulo tiene throttling. Esto implica que un intento de iniciar sesión fallido, requerirá que se identifique por la página de inicio de sesión estándar, o espere un tiempo antes de iniciar sesión. Ante el primer error la demora es de 5 segundos, cada intento fallido subsecuente doblará la demora. Reintentar antes de ese tiempo producirá un error NeedToWait, pero no reiniciará la cuenta de tiempo. El número de segundos que debe esperar hasta el próximo intento es devuelto por el campo wait. Esta opción sólo está habilitada para servidores que soportan memcaching.


[edit] Enlaces externos