js學習總結----ajax中的http請求方式及同步編程和非同步編程

來源:互聯網
上載者:User

標籤:san   while   set   時間   window   tin   客戶   creat   發送   

一、請求方式

var xhr = createXHR();xhr.open("get","/getList?num=12",true);xhr.open("post","/getList",true);xhr.send(‘{"name":"zhangsan","age":7}‘)//HTTP METHOD;用戶端向伺服器端發送請求的方式//以下的請求方式不管哪一種都可以向伺服器傳遞資料,也可以從伺服器中擷取到資料,從本質意義上講以下的方式是沒有任何區別的,例如用post做的事情用get也能做,而我們接下來講的區別都是目前開發人員們約定俗成的規範:/*    GET:一般應用於從伺服器擷取資料(給伺服器的資料少,從伺服器拿的資料多,項目中最常用的請求方式就是get)        使用GET請求給伺服器傳遞內容我們一般都使用"URL問號傳參的方式"    POST:一般應用於向伺服器推送資料(給伺服器的多,從伺服器拿下來的少)        使用POST請求給伺服器傳遞內容我們一般都使用"請求主體的方式"傳遞給伺服器    PUT:一般應用於給伺服器上增加資源檔(我們上傳圖片功能)    DELETE:一般應用於從伺服器上刪除資源檔    HEAD:一般應用於只擷取伺服器的回應標頭資訊*//*    GET PK POST    大小問題:        GET請求傳遞給伺服器的內容存在大小的限制,而POST理論上沒有限制        原因:GET通過URL傳參給伺服器,而每個瀏覽器對於URL的長度存在限制,Google8kb、Firefox7kb、IE12kb的長度限制,如果URL的長度超過限制,瀏覽器會把超出的部分截取    緩衝的問題:        GET請求會出現緩衝(這個緩衝不一定是304),POST是沒有緩衝的        在項目中我們的GET請求一般不會讓其出現緩衝"清楚緩衝":在url的末尾加一個隨機數        xhr.open("get","/getList?num=12&_="+Math.random(),true);    安全問題        一般來說GET不安全,而POST相對安全一些*/

二、同步編程和非同步編程

//同步(SYNC)和非同步(ASYNC)編程//JS是屬於單線程的,我們最好使用非同步編程//定時器都是非同步編程的//事件綁定都是非同步編程的//回呼函數也可以理解為非同步編程//在AJAX中可以使用非同步編程var count = 0;window.setInterval(function(){    count++;    console.log(count);//再輸出1},1000)//如果定時器的時間設定為0也不是立馬執行,而是需要等待一段時間,我們設定的時間是1000ms,但是不一定時間到就會執行,如果當前瀏覽器的線程被佔用,會一直等待console.log(count);//先輸出0while(1){}//加了while之後定時器裡面的代碼就不會執行//如果多個定時器的時間都到了,先執行時間短的這個定時器//AJAX中的同步:當AJAX任務開始的時候(XHR.SEND)需要等到readyState===4,才可以執行下面的任務//AJAX中的非同步:當AJAX任務開始的時候(XHR.SEND)不需要等到readyState===4,我們依然可以繼續做其他的任務,並且只有其他的任務完成後,我們在看是否為4,到達4的時候做一些相關的操作

js學習總結----ajax中的http請求方式及同步編程和非同步編程

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.