API:Etiquette/it

Vedi anche la guida per iniziare velocemente. It answers some questions not answered here and points to other useful pages.

Aiuto

 * 1) Leggi questa FAQ.
 * 2) Try to find the answer to your question in the API documentation here, in the API sandbox or on the self-documenting API home page.
 * 3) If you can't find the answer to your question on the web, you can ask your question on the mediawiki-api mailing list.

Limiti di richieste
Non c'è un limite fisso sulle richieste in lettura, ma ti chiediamo di essere così gentile da non tentare di interrompere il servizio di un sito. Molti amministratori di sistema si riservano il diritto di bloccarti senza tanti complimenti se metti a repentaglio la stabilità del loro sito.

Se effettui le tue richieste in serie invece che in parallelo (ad esempio se aspetti che una richiesta finisca prima di inviarne una nuova, in modo da non fare più di una richiesta nello stesso momento), allora sei certamente a posto. Tenta altresì di combinare le cose in una singola richiesta. Ad esempio: specifica più titoli separati da '|' nel parametro  invece che fare una nuova richiesta per ogni titolo; usa un "generatore" invece che effettuare una richiesta per ogni singolo risultato da un'altra richiesta.

Analizzare le revisioni
Sebbene sia possibile ottenere dei risultati da uno specifico numero di revisione, questa è un'operazione dispensiva per i server. Per ottenere una specifica revisione usa il parametro 'oldid', ad esempio:


 * [//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]

Utilizzo del parametro maxlag
Se il tuo compito non richiede interazione (ad esempio se l'utente non attende per il risultato) dovresti utilizzare il parametro maxlag. Questo preverrà che il tuo lavoro continui a rimanere in esecuzione mentre il carico sui server è alto. Un valore alto significa un comportamento più aggressivo, un valore basso è più apprezzato.

Vedi:

User-Agent header
Use a descriptive  header that includes your application's name and potentially your email address if appropriate. Do not simply copy the user-agent of a popular web browser (Unless your API client is a JavaScript application running through said web browser via Ajax, in which case one cannot modify the user-agent). This ensures that if a problem does arise it is easy to track down where it originates. See API:Main page#Identifying your client and m:User-Agent policy for details.

Thinking about performance generally
If you are trying to figure out why you are getting results more slowly than you would like, try to help you think about performance generally. If you are finding that reading via the API rather than directly reading from databases is impeding your client's performance, consider whether to put it into Wikimedia's Toolforge.