天天看點

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

1.跨域指的是什麼?

2.comet與ajax

3.xmlhttprequest

除了get與post之外,xmlhttprequest規範也允許第一個參數為delete,head,options,put。

如果有請求頭的話,需要設定它。

如:post請求需要“content-type”頭指定請求主題的mime類型。

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

request.setrequestheader("content-type","text/plain");

post發送:

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

4.為了在響應準備就緒得到通知,必須監聽xmlhttprequest對象上的readystatechange事件。

readystate是一個整數,它指定了http請求的狀态。

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

下面是一個異步響應。

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

下面是一個同步響應:

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

5.<script>元素可以發起跨域請求。而xmlhttprequest api不可以。

我們可以通過檢查頭檔案類型來判斷響應的資料類型。

6.multipart/form-data

當html表單同僚包含檔案上傳元素和其他元素時,浏覽器不能使用普通的表單編碼,

必須使用“multipart/form-data”的特殊content-type來用post方法送出表單。

7.檔案上傳

js:

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)
JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)
JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

8.http進度事件

http請求逾時,觸發timeout事件

http請求中止,觸發abort事件

http太多重定向的網絡錯誤會阻止請求完成,觸發error事件

與progress事件相關的其他三個屬性:

loaded:目前傳輸的位元組數值

total:頭傳輸的資料的整體長度

lengthcopmputable:如果知道内容長度,為true

例子:

9.cors(跨域資源共享)

10.使用eventsource建立簡單聊天用戶端

JavaScript權威設計--跨域,XMLHttpRequest(簡要學習筆記十九)

 轉載:http://www.cnblogs.com/zqzjs/p/4883955.html

繼續閱讀