<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                1.在使用XHR對象時,要調用的第一個方法是open(),它接收3個參數:要發送的請求的類型、請求的URL(基于當前頁面的相對路徑或絕對路徑)和表示是否異步發送請求的布爾值。調用open()方法并不會真正發送請求,而只是啟動一個請求以備發送。 只能向同一個域中使用相同端口和協議的URL發送請求。如果URL與啟動請求的頁面有任何差別,都會引發安全錯誤。 2.要發送特定請求,必須調用send()方法。該方法接收一個參數,即要作為請求主體發送的數據。如果不需要通過請求主體發送數據,則必須傳入null,因為這個參數對有些瀏覽器來說是必須的。 3.若ajax請求是同步的,則JavaScript代碼會等到服務器響應之后再繼續執行。 4.在接收到服務器返回的響應后,響應的數據會自動填充XHR對象,相關的屬性簡介如下: (1)responseText:作為響應主體返回的文本。 (2)responseXML (3)status:響應的HTTP狀態碼。 (4)statusText:HTTP狀態的說明。 5.若ajax請求是異步的,則必須要通過XHR的readystatechange事件監聽readyState屬性的值。這里有兩個值得注意的地方,一是onreadystatechange事件處理程序必須在open()方法前指定。二是onreadystatechange事件處理程序內部不應使用this對象(兼容性問題)。 6.在接收到響應之前還可以調用abort()方法來取消異步請求。 7.XHR對象的setRequestHeader()方法可以設置自定義的請求頭部信息。要成功發送請求頭部信息,必須在調用open()方法后切調用send()方法前調用此方法。(建議使用自定義的頭部字段名稱,不要使用瀏覽器正常發送的字段名稱,否則有可能會影響服務器的響應) 8.調用XHR對象的getRequestHeader()方法并傳入頭部字段名稱,可以取得相應的響應頭部信息。而調用getAllRequestHeaders()方法則可以取得一個包含所有頭部信息的長字符串。 9.POST請求是吧數據作為請求的主體提交,而get請求傳統上不是這樣的。發送給post請求第一步是在open()方法中在第一個參數位置傳入"post",第二步是向send()方法中傳入數據。 10.可以使用XHR來模仿表單提交:將Content-Type頭部信息設置為application/x-www-form-urlencoded,也就是表單提交時的內容類型,其次是以適當的格式創建一個字符串(第14章介紹的serialize()函數)。 11.FormData類型用于便捷地將表單數據序列化。 12.progress事件常用于創建進度指示器。 13.CORS(跨域資源共享)定義了在必須訪問跨域資源時,瀏覽器與服務器應該如何溝通。CORS背后的基本思想,就是使用自定義的HTTP頭部讓瀏覽器與服務器進行溝通,從而決定請求或響應是應該成功還是應該失敗。 14.ie通過XDR對象、其他瀏覽器通過XHR對象實現CORS。 15.JSONP(JSON with padding)由兩部分組成:回調函數和數據。回調函數是響應到來時應該在頁面中調用的函數。回調函數的名字一般是在請求中指定。而數據就是傳入回調函數中的JSON數據。下面是一個典型的JSONP請求: `http://freegeoip.net/json/?callback=handleResponse` JSONP是通過動態script元素來使用的。 16.Comet是一種服務器向頁面推送數據的技術。Comet能夠讓信息近乎實時地被推送到頁面上,非常適合處理體育比賽的比分和股票報價。有兩種實現Comet的方式:長輪詢和流。 17.短輪詢是指瀏覽器定時向服務器發送請求,看有沒有更新的數據。長輪詢同樣也是由瀏覽器發起請求,然后服務器一直保持連接打開,知道有數據可發送。發送完數據后,瀏覽器關閉連接,隨即又發起一個到服務器的新請求。 18.HTTP流在頁面的整個生命周期內只使用一個HTTP連接。具體來說就是瀏覽器向服務器發送一個請求,而服務器保持連接打開,然后周期性地向瀏覽器發送數據。在IE以外的瀏覽器中,通過偵聽readystatechange事件以及檢測readystate的值是否為3,就可以利用XHR對象實現HTTP流。 19.SSE(服務器發送事件)是圍繞只讀Comet交互推出的API或者模式。SSE支持短輪詢、長輪詢、HTTP流,而且能在斷開連接時自動確定何時重新連接。(IE不支持SSE) 20.SSE中要預訂新的事件流,首先要創建一個新的EventSource對象,并傳入一個入口點。 `var source = new EventSource('myevents.php');` 注意,傳入的URL必須與創建對象的頁面同源。 21.EventSource的實例有一個readyState屬性,值為0表示正在連接到服務器,值為1表示打開了連接,值為2表示關閉了連接。另外還有以下三個事件: (1)open:在建立連接時觸發。 (2)message:在從服務器接收到新事件時觸發。 (3)error:在無法建立連接時觸發。 一般用法如下: ~~~ source.onmessage = function(e){ var data = e.data; //處理數據 }; ~~~ 22. 要創建Web Socket,先實例一個WebSocket對象并傳入要連接的URL: `var socket = new WebSocket("ws://www.example.com/server.php");` 注意,必須給WebSocket構造函數傳入絕對URL。同源策略對Web Socket不實用,因此可以通過它打開任何站點的連接。至于是否會與某個域中的頁面通信,則完全取決于服務器。 23.實例化了WebSocket對象后,瀏覽器會馬上嘗試創建連接。與XHR類似,WebSocket也有一個表示當前狀態的readyState屬性。 要關閉Web Socket連接,可以在任何時候調用close()方法。 24.Web Socket通過send()方法發送數據,通過message事件監聽接收數據。 25.Web Socket常用于聊天室;在不能使用Web Socket的情況下,組合XHR和SSE也是能實現雙向通信的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看