
build網(wǎng)站制作 |
build網(wǎng)站制作當(dāng)前位置:首頁>主要服務(wù)>網(wǎng)站制作AJAX及使用E4X編寫Web服務(wù)腳本下面我們來詳細(xì)地看看這些代碼。首先,這些代碼支持兩種調(diào)用方式。您可以使用其中一種: XML execService(String url, XML envelope);或者void execService(String url, XML envelope, function callback); 在這種情況下,回調(diào)函數(shù)應(yīng)該是 void callback(XML x)。 于是您可以使用該函數(shù)直接調(diào)用 XML 服務(wù),并且等待響應(yīng),或者您也可以傳送一個函數(shù),使用 XML 響應(yīng)消息調(diào)用該函數(shù)。 該函數(shù)基于參數(shù)的數(shù)量來決定它是異步還是同步(3 是異步),然后簡單地使用 XMLHttpRequest 對象以 POST 請求方式來把 XML 消息放到 HTTP 請求信息,并把請求發(fā)送到指定的 URL。 我們設(shè)置了兩個 HTTP 頭信息——SOAPAction 和 Content-Type——然后使用 xmlhttp.send(xml.toString()) 將 SOAP 信封消息發(fā)送出去。 如果該調(diào)用行為是異步的,那么在調(diào)用從該響應(yīng)創(chuàng)建的 XML 回調(diào)函數(shù)之前,它需要等待,直到 readyState 為 4(全部完成)。 因此使用該操作的代碼如下所示: var url = document.getElementById("url").value; var callback = function(resp) { execService(url, envelope, callback); 在我們的樣例中,我們使用異步模型。典型的 Web 瀏覽器在與服務(wù)器通話時并不阻塞,并且我們也不希望它那樣。舉例來說,如果我們阻塞了瀏覽器,那么瀏覽器的窗口可能最終表現(xiàn)為“不響應(yīng)”狀態(tài),從而促使用戶結(jié)束它。 resp..*::getQuoteReturn 如果您是 E4X 新手,那么需要再次理解該語法。.. 意味著從樹中搜索命名的元素。*:: 意味著任意的命名空間,因此該數(shù)值將是在響應(yīng) SOAP 封裝的任意命名空間中被稱為 getQuoteReturn 元素的數(shù)值。 實際的樣本代碼 stockclient.html 同樣也顯示了該請求和響應(yīng) SOAP 封裝。測試該樣本——您應(yīng)該看到如下內(nèi)容: 該 stockclient.html 看上去類似一個傳統(tǒng)的使用提交按鈕的 Web 頁面,盡管它事實上并不是(瀏覽器一直在查看該頁面,從未更改)。我們創(chuàng)建了該文件,以便您能理解交互行為。但是,真正的 AJAX 版本的頁面要美觀很多。此 stockclientAjax.html 沒有按鈕。隨著您鍵入操作的進(jìn)行,它會自動地更新股票價格。測試該樣本。
1
|
易勢沈陽建站專業(yè)機構(gòu),以DIV+CSS為主,js/jQuery為輔,制作利于優(yōu)化,頁面美觀的優(yōu)質(zhì)網(wǎng)站!

網(wǎng)絡(luò)策劃公司|新浪官方微博|大連網(wǎng)站建設(shè)
沈陽易勢科技有限公司 網(wǎng)站制作網(wǎng)絡(luò)營銷公司 © 2011 , All rights reserved. 公司地址:沈陽市鐵西區(qū)貴和街道建設(shè)中路15號淺草綠閣商務(wù)樓402室沈陽做網(wǎng)站 沈陽建站
遼B2-20150173-8