Eski dışa aktarma URL'leri
API'den önce sonuçlar, sıradan bir arama URL'sine ?export= ve bir
anahtar eklenerek indirilirdi. Bu URL'ler bugün de her zaman olduğu gibi, bayt
bayt aynı şekilde çalışır. Kaldırılmayacaklar.
https://publicwww.com/websites/%22angular.min.js%22/?export=csv&key=YOUR_KEY
export= | Döndürdüğü |
|---|---|
urls | Her satırda bir URL. |
csv | domain;rank |
csvu | url;rank |
csvsnippets | domain;rank;snippet |
csvsnippetsu | url;rank;snippet |
cluster | Sonuçları indirmek yerine bir küme olarak kaydeder. |
&delimiterColumns= ve &delimiterSnippets=
ayırıcıları değiştirir,
https://publicwww.com/profile/api_status.xml ise günün kullanımını
XML olarak bildirir. Anahtarı
Authorization: Bearer <your api key> başlığında gönderin; eski
?key= biçimi hâlâ çalışır ama artık önerilmez, çünkü adresteki bir
anahtar tarayıcı geçmişine ve sunucu günlüklerine düşer.
Neden ayrı tutuluyorlar
Bu URL'ler uyumluluk katmanıdır ve onları böyle tutmak, API'nin normal, modern bir API olabilmesini sağlar. Çıktıları, her değişiklikte çalışan bir testle bayt bayt sabitlenmiştir; böylece yıllar önce yazılmış bir betik, her zaman ayrıştırdığı çıktıyı ayrıştırmaya devam eder. Bu URL'lere yeni bir şey eklenmez.
Bir betiği taşıma
En yakın karşılıklar:
| Eski | Yeni |
|---|---|
?export=csv | format=csv |
?export=csvu | format=csv&columns=url,rank |
?export=urls | format=txt |
?export=csvsnippets | format=csv&snippets=1 |
?export=csvsnippetsu | format=csv&columns=url,rank,snippets&snippets=1 |
&key= | Authorization: Bearer |
&delimiterColumns= | delimiter= |
| URL yolundaki sorgu | query= ya da JSON gövdesi |
api_status.xml | /v1/account |
Sütunlar birebir örtüşür, bu yüzden ayrıştırıcı genellikle değişmez. Değişenler ise işinize yarar:
- Hatalı anahtar, satırların olması gereken yerde
Wrong API keysözlerini içeren bir200değil, JSON gövdeli bir401yanıtıdır. - Çok hızlı gelen istek, bağlantının yarım dakikaya kadar açık tutulup sonra reddedilmesi yerine hemen
Retry-Afterbaşlığıyla birlikte429alır. - Biten kota bir hatadır. Eski URL'lerde ise sizi sessizce ücretsiz planın sınırlarına düşürür ve daha az satır döndürür; yanıtta bunu belirten hiçbir şey olmaz.
- Kısaltılmış yanıt işaretlenir:
X-Truncated. - Sayfalama: bir istemcinin ilk yirmi satıra bakmak için her şeyi indirmesi gerekmez.