在解釋ajax原理之前,我們不妨先舉個「領導想找小李匯報一下工作」的例子,領導想找小李問點事,就委託秘書去叫小李,自己就接著做其它事情,直到秘書告訴他小李已經到了,最後小李去跟領導匯報工作。ajax請求資料流程與「領導想找小李匯報一下工作」類似。其中最核心的依賴是瀏覽器提供的xmlhttprequest物件,它扮演的角色相當於秘書,使得瀏覽器可以發出http請求與接收http響應。瀏覽器接著做其他事情,等收到xhr返回來的資料在渲染頁面。
建立ajax核心物件xmlhttprequest
向伺服器傳送請求
xhr.
open
(method,url,
async);
send
(string)
;//post請求時才使用字串引數,否則不用帶引數;
- method:請求的型別;get或post
-async:true(非同步)或false(同步)
post請求一定要設定請求頭的格式內容
xhr.
open
("post"
,"test.html"
,true);
xhr.
setrequestheader
("content-type",)
;xhr.
send
("fname=henry&lname=ford");
//post請求引數放在send裡面也就是請求體
伺服器相應處理(同步、非同步兩種情況)
1、同步處理
xhr.
open
("get"
,"info.txt"
,false);
xhr.
send()
;document.
getelementbyid
("mydiv"
).innerhtml = xhr.responsetext;
//將獲取到的資料直接顯示在頁面上
2、非同步處理
相對來說比較複雜,要在請求狀態改變事件中處理
xhr.
onreadtstatechange
=function()
}
readystate是xmlhttprequest 物件中的乙個屬性,用來標識當前xmlhttprequest物件處於什麼狀態。readystate總共有5個值,分別是0~4,每個值代表了不同的含義: 一文讀懂Nginx
問 nginx的負載均衡演算法有什麼?預設是什麼演算法?答 1 輪詢 按請求的時間輪詢查空閒的後端伺服器 2 指定輪詢機率 機率的原因是後端伺服器的效能不均勻,好的多分點,差的少分點 3 固定ip繫結固定伺服器 預設是加權輪詢,就是優先訪問權重高的伺服器 問 nginx是單執行緒的嗎?答 是單執行緒...
一文讀懂SpringMVC
主要講的是dispatcherservlet這個類 ioc其實是乙個map,工程啟動後掃瞄路徑,根據類的全限定名建立bean 問 怎麼根據路徑找到方法?map還存key為 aaa value為該controller例項 問 autowired原理?自定義註解,在載入的時候,掃瞄controller層...
堆疊 一文讀懂
堆疊 stack 是一種先進後出的 操作受限的線性表,也可以直接稱為棧。可以把棧想象成乙個桶一樣,往這個桶裡面一層一層的放東西,先放進去的在裡面,後放進去的東西依次在外面。但取東西的時候就是先取靠近外面的,再依次一層層取裡面的。這就是 後進先出 last in first out 的原則。因此 棧 ...