JS XMLHttpRequest

XMLHttpRequest 對象用於在後臺與服務器交換數據。
var xhr = new XMLHttpRequest()
xhr.onreadystatechange = function () {
	 if (xhr.readyState == 4 && xhr.status == 200) {
		 console.log(xhr.responseText)
	 }
}
xhr.open("GET", "/api", false)
xhr.send(null)

狀態碼說明:
xhr.readyState:
0 :Uninitialized 初始化狀態。XMLHttpRequest 對象已創建或已被 abort() 方法重置。
1 :Open open() 方法已調用,但是 send() 方法未調用。請求還沒有被髮送。
2 :Sent Send() 方法已調用,HTTP 請求已發送到 Web 服務器。未接收到響應。
3 :Receiving 所有響應頭部都已經接收到。響應體開始接收但未完成。
4 :Loaded HTTP 響應已經完全接收。

xhr.status 即 HTTP 狀態碼,有 2xx 3xx 4xx 5xx
200 正常
3xx
301 永久重定向。如 http://xxx.com 這個 GET 請求(最後沒有 / ),就會被 301
到 http://xxx.com/ (最後是 / )
302 臨時重定向。臨時的,不是永久的
304 資源找到但是不符合請求條件,不會返回任何主體。如發送 GET 請求時,head 中
有 If-Modified-Since: xxx (要求返回更新時間是 xxx 時間之後的資源),如果此時
服務器 端資源未更新,則會返回 304 ,即不符合要求
404 找不到資源
5xx 服務器端出錯了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章