API:Etiquette/fr

Lisez également le guide du démarrage rapide. Il répond à certaines questions non répondues ici et contient des liens vers d'autres pages utiles.

Aide

 * 1) Lisez cette FAQ.
 * 2) Essayez de trouver la réponse à votre question dans la documentation de l'API ici, dans le bac à sable de l'API ou sur la page d'accueil auto-documentée de l'API.
 * 3) Si vous ne pouvez pas trouver la réponse à votre question sur le web, vous pouvez poser votre question sur la liste de diffusion de l'API MediaWiki.

Demande de limite
Il n'existe pas de limites codées en dur et rapides pour les requêtes en lecture, mais nous vous demandons de faire bien attention à ne pas bloquer les sites par surcharge. La plupart des administrateurs système se réservent le droit de vous bloquer tout simplement, si vous portez atteinte à la stabilité de leur site.

Si vous faites vos requêtes en série plutôt qu'en parallèle, (c'est à dire que vous attendez qu'une requête se termine avant d'envoyer la suivante, si bien que vous ne faites jamais plus d'une requête à la fois), alors tout devrait définitivement bien se passer. Essayez aussi de regrouper les choses à l'intérieur d'une même requête. Par exemple: spécifiez des titres multiples séparés par '|' dans un paramètre  plutôt que de faire une nouvelle requête pour chaque titre; utilisez un « générateur » au lieu de faire une requête pour chacun des résultats d'une requête précédente.

Analyser les révisions
Alors qu'il est possible d'obtenir des résultats pour un numéro de révision spécifique, ceci reste une opération coûteuse pour les serveurs. Pour récupérer une révision spécifique utilisez le paramètre 'oldid', exemple :


 * [//en.wikipedia.org/w/api.php?action=parse&format=xml&prop=images&oldid=254862759 en.wikipedia.org/w/api.php?action=parse&format=xml&prop=images&oldid=254862759]
 * [//en.wikipedia.org/w/api.php?action=parse&format=xml&prop=images&oldid=462841413 en.wikipedia.org/w/api.php?action=parse&format=xml&prop=images&oldid=462841413]

Utilliser la paramètre maxlag
Si votre tâche n'est pas interactive (c'est à dire que l'utilisateur n'attend pas le résultat) vous devez utiliser le paramètre maxlag. Ceci empêche votre tâche de s'exécuter quand la charge des serveurs est importante. Les valeurs hautes impliquent un comportement plus aggressif, les valeurs basses sont plus agréables.

Voir:

Entête de l'agent utilisateur
Utilisez un entête  de description qui inclut le nom de votre application et votre adresse courriel si nécessaire. Ne copiez pas simplement l'agent utilisateur d'un navigateur web populaire (à moins que votre client de l'API soit une application JavaScript qui s'exécute au travers du navigateur via Ajax, dans quel cas il est impossible de modifier l'agent utilisateur). Cela assure que si un problème apparait réellement, il est facile de tracer son origine. Voir m:User-Agent policy pour les détails.

Penser aux performances globales
Si vous essayez d'imaginer pourquoi vous obtenez les résultats plus lentement que vous ne l'espériez, essayez pour vous aider à penser généralement aux performances. Si vous pensez que la lecture via l'API plutôt que directement dans la base de données plombe les performances de votre client, considérez s'il ne vaut pas mieux la mettre dans la Toolforge de Wikimedia.