什麼是Ajax?和ajax中xmlhttp.readyState==4 && xmlhttp.status==200 是什麼意思?
新手上路,請多指教,做畢設之前我也不是很清楚這到底是個啥,而且從來沒聽說過,阿賈克斯???武器大師賈克斯???哈哈哈哈,不多說,經過長時間的翻閱,大概懂了一點,分享給大家下,有錯誤噴就行。。。
我看的這哥的部落格理解的:https://blog.csdn.net/jiuqiyuliang/article/details/38425339
1.可以不用重新整理網頁就可以知道你的資料庫中的資訊有沒有?很神奇,這怎麼可能,瞬間就知道了。。。
Ajax全稱:Asynchronous JavaScript + XML=非同步 JavaScript + XML
很明顯這不是一個全新的東西,為啥來?因為JS我們總知道吧。
Ajax包括:
1、HTML,用於建立web表單
2、DOM,用於動態顯示和互動
3、XML,使用XML做資料互動和操作
4、XmlHttpRequest,進行非同步資料接收
5、JavaScript,將它們緊密的結合在一起
Ajax的優缺點:
Ajax給我們帶來的好處,大家都有切身體會,在這裡我只是簡單的講幾點:
優點:
1.最大的一點是頁面無重新整理,使用者的體驗度更好。
2.非同步與伺服器互動,不需要打斷使用者操作,具有更快的響應能力。
3.減輕伺服器和頻寬的負擔,節約空間和成本,ajax是“按需取資料”,可以最大程度的減輕對伺服器造成的負擔。
4.基於標準化的並被廣泛應用的技術,不需要下載外掛或者小程式。
Ajax具有很多的優點,正是這些優點也反應了它的缺點(當然這裡缺點可以克服)。
缺點:
1.安全問題
2.對搜尋引擎的支援比較弱。
3.破壞了程式的異常處理機制。
4.違背了url和資源定位的初衷。
ajax中xmlhttp.readyState==4 && xmlhttp.status==200 是什麼意思?
xmlhttp.readyState的值及解釋:
0:請求未初始化(還沒有呼叫 open())。
1:請求已經建立,但是還沒有傳送(還沒有呼叫 send())。
2:請求已傳送,正在處理中(通常現在可以從響應中獲取內容頭)。
3:請求在處理中;通常響應中已有部分資料可用了,但是伺服器還沒有完成響應的生成。
4:響應已完成;您可以獲取並使用伺服器的響應了。
xmlhttp.status的值及解釋:
100——客戶必須繼續發出請求
101——客戶要求伺服器根據請求轉換HTTP協議版本
200——交易成功
201——提示知道新檔案的URL
202——接受和處理、但處理未完成
203——返回資訊不確定或不完整
204——請求收到,但返回資訊為空
205——伺服器完成了請求, 使用者代理必須復位當前已經瀏覽過的檔案
206——伺服器已經完成了部分使用者的GET請求
300——請求的資源可在多處得到
301——刪除請求資料
302——在其他地址發現了請求資料
303——建議客戶訪問其他URL或訪問方式
304——客戶端已經執行了GET,但檔案未變化
305——請求的資源必須從伺服器指定的地址得到
306——前一版本HTTP中使用的程式碼,現行版本中不再使用
307——申明請求的資源臨時性刪除
400——錯誤請求,如語法錯誤
401——請求授權失敗
402——保留有效ChargeTo頭響應
403——請求不允許
404——沒有發現檔案、查詢或URl
405——使用者在Request-Line欄位定義的方法不允許
406——根據使用者傳送的Accept拖,請求資源不可訪問
407——類似401,使用者必須首先在代理伺服器上得到授權
408——客戶端沒有在使用者指定的餓時間內完成請求
409——對當前資源狀態,請求不能完成
410——伺服器上不再有此資源且無進一步的參考地址
411——伺服器拒絕使用者定義的Content-Length屬性請求
412——一個或多個請求頭欄位在當前請求中錯誤
413——請求的資源大於伺服器允許的大小
414——請求的資源URL長於伺服器允許的長度
415——請求資源不支援請求專案格式
416——請求中包含Range請求頭欄位,在當前請求資源範圍內沒有range指示值,請求也不包含If-Range請求頭欄位
417——伺服器不滿足請求Expect頭欄位指定的期望值,如果是代理伺服器,可能是下一級伺服器不能滿足請求
合起來
500——伺服器產生內部錯誤
501——伺服器不支援請求的函式
502——伺服器暫時不可用,有時是為了防止發生系統過載
503——伺服器過載或暫停維修
504——關口過載,伺服器使用另一個關口或服務來響應使用者,等待時間設定值較長
505——伺服器不支援或拒絕支請求頭中指定的HTTP版本
1xx:資訊響應類,表示接收到請求並且繼續處理
2xx:處理成功響應類,表示動作被成功接收、理解和接受
3xx:重定向響應類,為了完成指定的動作,必須接受進一步處理
4xx:客戶端錯誤,客戶請求包含語法錯誤或者是不能正確執行
5xx:服務端錯誤,伺服器不能正確執行一個正確的請求
xmlhttp.readyState==4 && xmlhttp.status==200的解釋:請求完成並且成功返回