成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript Ajax與Comet——“XMLHttpRequest2級”的注意要點

melody_lql / 3296人閱讀

摘要:并非所有的瀏覽器都完整的實現(xiàn)了級的規(guī)范,但是所有的瀏覽器都實現(xiàn)了它部分的規(guī)范。超時設(shè)定唯一支持的超時設(shè)定事件,對象的事件。方法用于重寫響應(yīng)的類型。它能強迫服務(wù)器返回的數(shù)據(jù)類型給些為本方法提供的類型。

并非所有的瀏覽器都完整的實現(xiàn)了XMLHttpRequest 2 級的規(guī)范, 但是所有的瀏覽器都實現(xiàn)了它部分的規(guī)范。

FormData

FormData類型

append()向其添加數(shù)據(jù),包含兩個參數(shù):鍵和值;

如:

var data = new FormData();
data.append("name", "oliver");

也可以用表單元素的數(shù)據(jù)預(yù)先想其中填入鍵值對:

var data = new FormData(document.forms[0]);

它是為序列化表單以及創(chuàng)建于表單格式相同的數(shù)據(jù)提供了遍歷:

var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
    if (xhr.readyState == 4) {
        if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
            console.log(xhr.responseText);
        } else {
            console.log("error");
        }
    }
};
xhr.open("post", "postexample.php", true);
var form = document.getElementById("form1");
xhr.send(new FormData(form));

它的方便之處在于不用明確的在XHR對象上設(shè)置請求頭部。

超時設(shè)定

IE8+唯一支持的超時設(shè)定事件,XHR對象的ontimeout事件。XHR對象的timeout設(shè)定超時時間,單位是毫秒數(shù)。這些設(shè)定要方法open之后,send之前。

var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
    if (xhr.readyState == 4) {
        if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
            console.log(xhr.responseText);
        } else {
            console.log("error");
        }
    }
};
xhr.open("get", "getexample.php", true);
xhr.timeout = 1000;
xhr.ontimeout = function () {
    alert("Request did not return in a second.");
};
xhr.send(null);
overrideMimeType()方法

用于重寫XHR響應(yīng)的MIME類型。它能強迫服務(wù)器返回的數(shù)據(jù)類型給些為本方法提供的類型。使用方法:
在open之后,send之前。

xhr.open("get", "getexample.php", true);
xhr.overrideMimeType("text/xml");
xhr.send(null);

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/87697.html

相關(guān)文章

  • JavaScript AjaxComet——“進度事件”注意要點

    摘要:有以下個進度事件在接收到響應(yīng)數(shù)據(jù)的第一個字節(jié)時觸發(fā)。在接收響應(yīng)數(shù)據(jù)期間持續(xù)的觸發(fā)在請求發(fā)生錯誤時觸發(fā)在因調(diào)用方法而終止連接時觸發(fā)在接收到完整的響應(yīng)數(shù)據(jù)時觸發(fā)在通信完成或者觸發(fā),,事件后觸發(fā)。 有以下6個進度事件: loadstart: 在接收到響應(yīng)數(shù)據(jù)的第一個字節(jié)時觸發(fā)。 progress: 在接收響應(yīng)數(shù)據(jù)期間持續(xù)的觸發(fā) error: 在請求發(fā)生錯誤時觸發(fā) abort: 在因調(diào)用ab...

    ad6623 評論0 收藏0
  • JavaScript AjaxComet——“其他跨域技術(shù)”注意要點

    摘要:由兩部分組成回調(diào)函數(shù)和數(shù)據(jù)?;卣{(diào)函數(shù)是當(dāng)響應(yīng)到來時應(yīng)該在頁面中調(diào)用的函數(shù),回調(diào)函數(shù)的名字一般是在請求中指定的。下面是以個的例子回調(diào)函數(shù)的名字就是是通過動態(tài)的元素來使用的,使用時可以為屬性指定一個跨域。是為與其他傳遞消息的很相似。 圖像Ping技術(shù) 根據(jù)一個網(wǎng)頁可以從任何網(wǎng)頁中加載圖像而不用擔(dān)心使用跨域的原理, 我們可以動態(tài)的創(chuàng)建圖像, 使用他們的onload和onerror事件處理程序...

    Hwg 評論0 收藏0
  • JavaScript AjaxComet——“XMLHttpRequest對象”注意要點

    摘要:在中,對象是通過庫中的對象實現(xiàn)的??梢詸z測對象的屬性,該屬性表示請求響應(yīng)過程的當(dāng)前活動階段。已經(jīng)調(diào)用但尚未接收到響應(yīng)接收。由于內(nèi)存原因,不建議重用對象。頭部信息對象提供了操作請求頭部和響應(yīng)頭部信息的方法。建議使用自定義的頭部名稱。 在IE5中,XHR對象是通過MSXML庫中的ActiveX對象實現(xiàn)的。在IE中可能會遇到三種不同版本的XHR對象,即MSXML2.XMLHttp、MSXML...

    Martin91 評論0 收藏0
  • JavaScript AjaxComet——“跨源資源共享”注意要點

    摘要:注意請求和響應(yīng)都不包含信息。對象的安全機制部分實現(xiàn)了的規(guī)范。請求返回后會觸發(fā)事件,響應(yīng)數(shù)據(jù)保存在屬性中。無論是同源請求還是跨域請求,對于本地資源最好使用相對,在訪問遠程資源時再使用絕對。發(fā)送請求之后,服務(wù)器決定是否允許這種類型的請求。 通過XHR實現(xiàn)Ajax通信的一個主要限制,來源于跨域安全策略。在默認情況下,Ajax只能訪問與包含它的頁面位于同一個域中的資源。但是有時也需要一些跨域的...

    haobowd 評論0 收藏0
  • AjaxComet-JavaScript程序設(shè)計第21章讀書筆記(1)

    摘要:技術(shù)的核心是對象即。收到響應(yīng)后,響應(yīng)的數(shù)據(jù)會自動填充對象的屬性,相關(guān)的屬性有作為響應(yīng)主體被返回的文本。收到響應(yīng)后,一般來說,會先判斷是否為,這是此次請求成功的標志。中的版本會將設(shè)置為,而中原生的則會將規(guī)范化為。會在取得時報告的值為。 Ajax(Asynchronous Javascript + XML)技術(shù)的核心是XMLHttpRequest對象,即: XHR。雖然名字中包含XML,但...

    imingyu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<