API:Etiquette/tr

Bu sayfa, API kullanılırken uyulması gereken en iyi uygulamaları içerir.

İstek sınırı
Okuma isteklerinde zor ve hızlı bir sınır yoktur, ancak düşünceli olun ve bir siteyi kaldırmamaya çalışın. Çoğu sistem hizmetlisi, sitelerinin kararlılığını tehlikeye atarsanız sizi belirsiz bir şekilde engelleme hakkını saklı tutar.

Yeni bir istek göndermeden önce bir isteğin bitmesini beklemek, isteklerinizi paralel yerine seri olarak yapmak güvenli bir talep oranıyla sonuçlanmalıdır. Ayrıca, bir istekte birden fazla öğe istemeniz de önerilir:


 * Her başlık için yeni bir istek yapmak yerine mümkün olduğunda boru karakterini kullanmak, örneğin.
 * Başka bir istekten her sonuç için istek yapmak yerine kullanmak.

Bant genişliği kullanımını azaltmak için  ayarlayarak API çağrıları yaparken GZip sıkıştırmasını kullanın.

Revizyonların ayrıştırılması
parametresini kullanarak belirli bir revizyon numarasından sonuçları sorgulamak mümkün olsa da, bu sunucular için pahalı bir işlemdir. Belirli bir düzeltmeyi almak için  parametresini kullanın. Örneğin:

Maxlag parametresi
Göreviniz etkileşimli değilse, yani bir kullanıcı sonucu beklemiyorsa,  parametresini kullanmalısınız. parametresinin değeri tamsayı saniye olmalıdır. Örneğin:

Bu, sunuculardaki yük yüksek olduğunda görevinizin çalışmasını engelleyecektir. Daha yüksek değerler daha agresif davranış anlamına gelir, daha düşük değerler daha iyidir.

Ayrıntılar için sayfasına bakın.

Kullanıcı-Aracı başlığı
Açıklayıcı bir Kullanıcı Aracısı başlığı ayarlamak en iyi yöntemdir. Bunu yapmak için  kullanın. Örneğin PHP'de:

Popüler bir web tarayıcısının kullanıcı aracısını kopyalamayın. This ensures that if a problem does arise it is easy to track down where it originates.

If you are calling the API from browser-based JavaScript, you may not be able to influence the  header, depending on the browser. To work around this, use the  header.

See m:User-Agent_policy for more details.

Data formats
All new API users. See for more details.

Performance
If you are getting results more slowly than you would like, read the to help you think about performance generally.

If 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.