Reddit Search APIÖnce sorular, sonra sonuçlar.

Okuma kitaplığı

Boş sonuçlara ve aktarım hatalarına farklı ekranlar verin

Başarılı boş nicemleme aramasını HTTP hatalarından ve gelmeyen yanıttan ayırın; gönderilen soruyu koruyun, yeniden denemeyi bilinçli bir eylem yapın.

Yanıt sınıflarını tanımlayın

Boş sonuç alanı, aramada ne olduğunu açıklayamaz. Önerilen LocalLLaMA defterinde sürmekte olan isteği, kayıt içeren başarılı yanıtı, boş data dizili başarılı yanıtı, HTTP hatasını ve kullanılabilir yanıt gelmeyen aktarım girişimini ayırın. Bunlar farklı gözlemlerdir. Boş başarı, arşivde ilgili tartışma olmadığını kanıtlamaz; kayıp yanıt sunucunun isteği bitirip bitirmediğini göstermez. Bu yorumları sonuç yok kısayolunun içine gizlemeyin.

HTTP durumunu doğrulanmış yanıt yapısıyla birlikte kullanın. data: [] içeren 200 yanıtı başarılı boş veri alımıdır. HTTP 400, 401, 402, 429 ve 502, başarılı boş verinin başka türleri değil hata yanıtlarıdır. Ağ istisnasında hiç HTTP durumu olmayabilir. Yalnızca bir hatadan isteğin tüm arka uç aşamalarına ulaşıp ulaşmadığını çıkarmayın. Sonradan gelen yanıtı doğru aramaya bağlamak için gönderilen parametreleri ve uygulama istek kimliğini her sonuçla birlikte tutun.

Boş durumun eylemlerini yazın

Bu istek için kayıt dönmedi gibi ölçülü bir metin kullanın. Gönderilen q=quantization ve subreddit=LocalLLaMA değerlerini, etkin tarih veya puan kısıtlarıyla yakında gösterin. Tek koşulu düzenleyip tekrar göndermeye bilinçli bir yol sunun. Boş yanıt yerine popüler tartışmalar uydurmayın veya eski etiketi koruyarak sorguyu otomatik genişletmeyin. Okur filtreyi kaldırırsa yeni sonuç değişen isteğe aittir ve sayfa 1'den yeni bir dizi başlatmalıdır.

Yokluğun nedenini teşhis ediyormuş gibi davranmadan ilgili kısıtı açıklayın. quantization memory için çözümlenmiş tüm terimler, eşleşen tek title veya text alanında bulunmalıdır; iki alana dağılmaları yetmez. Bu, boş yanıtın nedeninin kanıtı değil, olası bir değerlendirmedir. Ücret ayrımını koruyun: başarılı boş alım da bir kredidir. İlerideki boş sayfada toplam bilinmeyebilir. Bunu arşivde sıfır eşleşme iddiasına veya durmadan sayfa isteme gerekçesine dönüştürmeyin.

Hata durumunun eylemlerini yazın

Hatayı müdahale edebilecek kişiye yöneltin. HTTP 400, desteklenmeyen parametre veya YYYY-MM-DD olmayan tarih gibi gerçek girdinin incelenmesini gerektirir. HTTP 401 hizmetin API anahtarıyla, 402 hizmet hesabının kullanılabilir kredisiyle ilgilidir; hiçbiri okurun kendi uygulama oturumunun bittiğini kanıtlamaz. Operatörün arka uç anahtarını düzeltmesi veya bakiyeyi incelemesi gerekebilir. Okurdan herkese açık arama ekranına hizmet anahtarı yapıştırmasını istemeyin.

429 için Retry-After değerine uyun ve tekrarlanan gönderimleri azaltın. 502 için sorguyu koruyun, uygun olduğunda bilinçli yeniden deneme sunun; ayrılan kredi iadesi mutabakat bekleyebilir. Gelmeyen yanıt farklı ifade gerektirir: başarılı isteğin ücretlendirilip ücretlendirilmediği dâhil sonuç bilinmiyordur. Ayırma öncesi reddedilen geçersiz istek ücretlenmez; bağlantı hatası ise bu reddin gerçekleştiğini kanıtlamaz. Ücretsiz /v1/status statik hizmet açıklaması ve HTTP yanıtı verir; kayıp isteğin sonucunu çözmez veya arama sağlığını doğrulamaz.

Gezinme sürekliliğini sınayın

Süreklilik, kullanıcı girdisini korumayı da içerir. Geçerli boş yanıt, HTTP hatası ve yanıt alınmadan önce ağ istisnası için yerel test verileri planlayın. Açıkça sentetik malzeme kullanın; bunlar arşiv bulunabilirliğini değil, arayüzünüzü sınar. Her durumda farklı metin çıktığını ve gönderilen sorgunun erişilebilir kaldığını denetleyin. Okurun istek beklerken formu değiştirdiği örneği ekleyin: eski sonuç yeni ifadenin yanıtı gibi görünmemelidir.

Sonraki sayfa başarısız olduğunda yüklenmiş kayıtları koruyun; tamamlanan durumlarını başarısız devamdan ayırın. Okur aynı sayfayı yeniden deneyebilsin veya sessizce başka istek gönderilmeden forma dönebilsin. Arayüzde geç yanıtı yok saymak, sunucu işinin iptalini garanti etmez. Uygulamanın gerçekte sınadığı geçişleri ve yalnızca önerilenleri kaydedin. Amaç, yanıttan destek almayan güven verici mesaj değil, bilineni anlatan ve yararlı bir sonraki eylem sunan ekrandır.