Reddit App API
TR

Reddit App API · 03 / APP

Bir arama ekranının yalnızca sonuç ve hata durumundan fazlasına ihtiyacı var

Önerilen yürüyüş uygulamasında yükleniyor durumunu, başarılı boş sonuçları ve istek hatalarını ayırın. Yürüyüşçülere yararlı mesajlar, operatörlere doğru tanılama adımları sunun.

Yerel birim örneğiKurgusal yerel örnek. İstek gönderilmez.

Ekranınız

Hazır

Kurgusal yerel örnek. İstek gönderilmez.

offline maps
{
  "request_sent": false
}

Kurgusal yerel örnek. İstek gönderilmez.

Hizmet durumu panosu değil, bir ekran senaryosu

Bunlar geliştiricinin sahip olduğu yürüyüş uygulaması için önerilen durumlardır. Kaydedilmiş API yanıtları, çalışan ekran gösterimleri veya herhangi bir offline maps kaydının mevcut olduğuna dair kanıt değildir. Yürüyüşçü uygulamanızı kullanır; API hesabının operatörü hizmet anahtarını ve kredileri yönetir. Her birine, harekete geçebileceği bilgiyi verin.

İlk aramadan önce özelliğin geçmiş tartışmaları okuduğunu açıklayın. offline maps gibi önerilen bir sorgu başlangıca yardımcı olabilir; ancak arama yapılmış gibi uydurma öneriler göstermeyin. Açık bir Arama eylemi bırakın; böylece yazmak veya formda gezinmek tek başına ücretli istek başlatmak zorunda kalmaz.

Yükleniyor: soruyu görünür tutun

İstek beklerken gönderilen sorguyu ve seçilen filtreleri koruyun. Sonuç alanını yükleniyor olarak işaretleyin, aynı eylemin tekrar gönderilmesini önleyin ve animasyonun yanında erişilebilir bir metin etiketi sunun. Bir gecikme tek başına hizmet kesintisini veya nedenini belirlemez.

Kişi eski yanıt gelmeden sorguyu değiştirirse her yanıtı gönderildiği girişle ilişkilendirin. Eski sorunun sonuçlarını yeni sorunun altına sessizce yerleştirmeyin. Bu, uygulamada hayata geçirip test edeceğiniz bir tercihtir; arşiv API’sinin sağladığı sıralama veya iptal davranışı değildir.

Başarı kayıt içerebilir ya da boş olabilir

Kayıtlar döndüğünde yalnızca mevcut alanları gösterin ve içeriğin geçmişe ait olduğunu belirtin. Bir yorumun başlığı olmayabilir; eksik tarih bilinmiyor olarak kalmalıdır. pagination.relation gte veya unknown olduğunda kesin bir eşleşme sayısı duyurmak yerine görünen sayfayı anlatın.

Başarılı boş yanıt ayrı bir sonuçtur. Örnek bir mesaj: Bu istek için kayıt döndürülmedi. Mevcut girdiyi koruyarak ifadeyi veya filtreleri bilinçli biçimde değiştirmeyi önerin. Böyle bir tartışmanın hiçbir yerde bulunmadığını ileri sürmeyin. Başarılı boş veri alma isteği yine bir krediye mal olur.

400, 401 ve 402 farklı sorumlular gerektirir

HTTP 400 geçersiz istek girdisini belirtir. Asıl parametre sorununu kontrol edin: desteklenmeyen bir parametre, aralık dışı sayfa veya YYYY-MM-DD biçiminde olmayan tarih örnek olabilir. Uygunsa düzeltilebilir alanı yürüyüşçüye açıklayın; arka ucun sözleşme hatalarını operatör tanılamasında tutun.

HTTP 401 eksik veya geçersiz hizmet API anahtarı demektir. Yürüyüşçünün uygulama oturumunun bittiğini kanıtlamaz ve bu anahtarlar için belgelenmiş süreye bağlı sona erme mekanizması yoktur. Operatör kayıtlı, alan adına özgü anahtarı ve yakın zamanda yapılan yenilemeyi kontrol eder. Yürüyüşçüden anahtar vermesini veya hizmet hesabına giriş yapmasını istemeyin.

HTTP 402, hizmet hesabında yetersiz kredi demektir. Yürüyüşçüye Tartışma araması geçici olarak duraklatıldı mesajı gösterilebilir. Operatör Anahtar ve krediler bölümünde giriş yapıp bakiyeyi inceleyebilir. Neden giderildikten sonra yeni bir istek ayrı bir eylemdir; eski isteği aynen tekrarlamak çözüm değildir.

429, üst hizmet hatası ve belirsiz teslimat

HTTP 429 hız sınırına ulaşıldığını belirtir. Retry-After’a uyun, tekrar gönderimleri azaltın ve uygun zamanda yeniden denemeye izin verin. Sınır ortak arka ucu veya hesabı ilgilendirebilir; tek bir yürüyüşçüyü suçlamayın. Sınırsız otomatik yeniden deneme döngüsü çalıştırmayın.

Ağ geçidi üst hizmet hatalarını HTTP 502 ile bildirir. Sorguyu koruyun ve sonraki denemenin başarılı olacağını vaat etmeden açık bir yeniden deneme seçeneği gösterin. Başarısız üst hizmet isteğinde ayrılan kredi iade edilir; yanıt mutabakatın beklediğini de bildirebilir. Uygulamanız yanıtı tamamen kaybederse son ücretlendirme sonucu belirsizdir: sunucu işlemi başarıyla tamamlamış olabilir.

Herkese açık /v1/status yolu hizmetin kapsamına dair sabit bir açıklama verir ve HTTP işleyicisinin yanıt verdiğini gösterir. Arşiv aramasını test etmez veya üst hizmetin sağlıklı olduğunu onaylamaz. Operasyon kararlarını gerçek istek sonucuna dayandırın. Tam senaryo için Uygulama senaryosu bölümüne, uygulama tercihleri için notlardaki Yükleniyor, boş ve hata ekranları yazısına dönün.