API:Assert
Cette page fait partie de la documentation de l'API MediaWiki Action. |
Version de MediaWiki : | ≥ 1.23 |
Le paramètre assert de l'API action peut être utilisé dans toute requête à l'API pour vérifier certaines conditions avant l'exécution.
Les options disponibles sont :
assert=anon
: Vérifier que vous agissez en tant qu'utilisateur IP (c'est à dire anonyme). Cela empêche l'utilisation accidentelle d'un compte enregistré. Depuis MediaWiki 1.35 • change 572374assert=user
: Vérifier que vous utilisez un compte enregistré (qu'il soit nominatif ou temporaire). Cela évite le repli accidentel sur un utilisateur IP.assert=bot
: Vérifier que vous êtes connectés avec un compte qui possède les droits de robot . Cela empêche votre script d'interagir avec les wikis où votre robot ne possède pas la marque bot.assertuser=...
: Vérifier que vous êtes connectés avec le nom d'utilisateur attendu. Depuis MediaWiki 1.28
Notez que les utilisateurs temporaires satisfont à assert=user
mails ils échouent à assert=anon
.
Erreurs possibles
Si l'assertion échoue, un des codes d'erreur suivants sera renvoyé :
assertanonfailed
assertuserfailed
assertbotfailed
assertnameduserfailed
Mise en garde et cas d'utilisation
Ces paramètres sont destinés à servir comme seconde ligne de défense contre plusieurs types de problèmes.
Erreurs des opérateurs robots
Il est facile, suite à une erreur simple d'un opérateur, d'obtenir beaucoup de modifications inappropriées, comme par exemple un robot qui s'exécute sur le mauvais wiki ou avec un mauvais nom d'utilisateur, surtout si vous exécutez plusieurs tâche robotisées.
Les paramètres assert=bot
et assertuser=...
aident à prévenir de ces erreurs.
Expiration de la session connectée
Après la connexion, les cookies que vous recevez ne sont valables que pendant 30 jours par défaut, après quoi votre robot sera déconnecté, mais il peut continuer à travailler avec ses actions liées aux attributs de l'adresse IP ou d'un nom temporaire d'utilisateur (si les utilisateurs déconnectés sont autorisés à les exécuter).
Le paramètre assert=user
sert à empêcher cela.
Changement de compte utilisateur
Les outils interactifs (du navigateur) qui utilisent l'API pour modifier, veulent souvent s'assurer que l'utilisateur comprend comment son travail lui sera attribué.
Lorsque l'utilisateur se connecte ou se déconnecte dans un autre onglet du navigateur (ou que sa session de connexion expire), cela n'apparaît pas immédiatement dans l'interface de l'outil, mais la nouvelle session de connexion sera utilisée pour enregistrer les actions.
Les paramètres assertuser=...
et assert=anon
sont destinés à permettre la détection de ce scénario et l'affichage d'un message approprié avant de continuer.
Vérifier que vous êtes connecté
Si vous voulez vérifier que votre client HTTP est connecté à l'API Action sans réaliser d'autre action, vous pouvez envoyer une requête avec les paramètres action=query&assert=user
.
Cela renverra une réponse vide ({}
au format JSON) si vous êtes réellement connecté, ou l'erreur assertuserfailed
dans le cas contraire.
Habituellement, une telle requête séparée n'est pas utile.
À la place, ajoutez le paramètre assert=user
à chacune de vos requêtes.