Yanıtlar:
readyState
Değerlerin tam listesi :
State Description
0 The request is not initialized
1 The request has been set up
2 The request has been sent
3 The request is in process
4 The request is complete
( https://www.w3schools.com/js/js_ajax_http_response.asp adresinden )
Pratikte 4 dışında neredeyse hiçbirini kullanmazsınız.
Bazı XMLHttpRequest uygulamaları, responseText
ne zaman kısmen alınan yanıtları görmenize izin verebilir readyState==3
, ancak bu evrensel olarak desteklenmez ve buna güvenilmemelidir.
kieron'un cevabı w3schools ref içerir. kimsenin güvenmediği Bobince cevabı, aslında IE'nin yerel uygulamasını anlatan bağlantı veriyor.
öyleyse işte readystate'in neyi temsil ettiğini doğru bir şekilde anlamak için alıntılanan orijinal belgeler:
XMLHttpRequest nesnesi birkaç durumda olabilir. ReadyState özelliği, aşağıdaki değerlerden biri olması gereken mevcut durumu döndürmelidir:
UNSENT (sayısal değer 0)
Nesne oluşturuldu.AÇILDI (sayısal değer 1)
open () yöntemi başarıyla çağrıldı. Bu durum sırasında istek başlıkları setRequestHeader () kullanılarak ayarlanabilir ve istek send () yöntemi kullanılarak yapılabilir.HEADERS_RECEIVED (sayısal değer 2)
Tüm yönlendirmeler (varsa) izlendi ve son yanıtın tüm HTTP başlıkları alındı. Nesnenin birkaç yanıt üyesi artık kullanılabilir.LOADING (sayısal değer 3)
Yanıt varlık gövdesi alınıyor.YAPILDI (sayısal değer 4)
Veri aktarımı tamamlandı veya aktarım sırasında bir şeyler ters gitti (örn. Sonsuz yeniden yönlendirmeler).
Lütfen buradan okuyun: W3C ReadyState Açıklaması
0
, 1
Ve 2
yalnızca şu ana kadar aradım bir istek yapmak için gerekli yöntemlerin kaç parça.
3
size sunucunun yanıtının gelmeye başladığını söyler. Ancak XMLHttpRequest
nesneyi bir web sayfasından kullanırken, bu bilgilerle yapabileceğiniz neredeyse hiçbir şey (*) yoktur, çünkü izin veren genişletilmiş özelliklere erişiminiz yoktur. kısmi verileri okumalısınız.
readyState 4
, herhangi bir anlamı olan tek kişidir.
(*: readyState'i kontrol etmek için aklıma gelen tek olası kullanım 3
, sunucu sonunda bir tür yaşam sinyali vermesidir , böylece aldığınızda tam bir yanıt için beklediğiniz süreyi muhtemelen artırabilirsiniz.)
onreadystatechange readyState özelliği her değiştiğinde otomatik olarak çağrılacak bir işlevi (veya bir işlevin adını) kaydeder readyState XMLHttpRequest'in durumunu tutar. 0'dan 4'e değişiklikler:
0: istek başlatılmadı
1: sunucu bağlantısı kuruldu
2: istek alındı
3: işleme isteği
4: istek tamamlandı ve yanıt hazır
durum 200: "Tamam"
404 Sayfa Bulunamadı
(Https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/readyState adresinden)