Ajax

Ajax的技術核心是XMLHttpRequest

第一步:var xhr=new XMLHttpRequest();

第二步:xhr.open(),它接受三個參數:要發送的請求類型("get"、“post”)、請求的URL和表示是否異步發送請求的布爾值,如xhr.open("get","example.php",false); ?其中URL是相對于執行代碼的當前頁面(當然也可以使用絕對路徑);二調用open()的方法并不會真正發送請求,而只是啟動一個請求以備發送;false代表同步請求

第三步:xhr.send(null),send()方法可以接收一個參數,即作為請求主體發送的數據,如果不需要通過請求主體發送數據,則必須傳入null

大多數是發送異步請求,才能讓javascript繼續執行而不必等待響應,調用open之前制定onreadystatechange事件處理程序才能確保跨瀏覽器兼容性。

例如:

var xhr=new XMLHttpRequest();

xhr.onreadystatechange=function(){

if(xhr.readyState==4){

if((xhr.status>=200 && xhr.status<300 ) || xhr.status==304){

alert(xhr.responseText);

}else{

alert("Request was unsucessful:"+xhr.status);

}}};

xhr.open(“get”,“example.txt”,true);

xhr.send(null);

其中readyState取值(0-4)0:未初始化,尚未調用open()方法。1:啟動,已經調用open()方法,但尚未調用send()方法;2:發送 已經調用send()方法,但尚未收到響應。3:接收,已經接收到部分響應數據。4:完成已經接收到全部響應數據,而且已經可以在客戶端使用了。

另外接收到響應之前可以調用abort()方法取消異步請求。xhr.abort();調用之后xhr會停止觸發事件對象,而且也不再允許訪問任何和響應有關的屬性。

http頭部信息

cookie :當前頁面頁面設置的任何cookie

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容