用IE和SQL2k開發一個XML聊天程式

來源:互聯網
上載者:User
xml|程式 不同瀏覽器之間多年的競爭導致產生了很多工具協助開發人員完成以前很難做到的任務。現在,只要一小段指令碼,你就可以建立一個應用程式將資料繫結到使用者控制項,這樣就可以通過一個內嵌的代理類型的控制項與通訊。

  在InternetExplorer(IE)中,這些東西包括XML資料島和XMLHTTP對象,XML資料島用於將資料繫結到表單元素,XMLHTTP對象用於在當前頁面內不導航到其它頁面的情況下建立對的同步和非同步呼叫。我將使用這兩個易用的特性建立一個簡單的聊天應用程式,該應用程式由一些充當UI的ASP頁面,實現用戶端功能的javascript,和2000中完成商業邏輯的T-SQL所組成。

  客戶和使用XML通訊。在Web接收到一個訊息塊之後,訊息塊會追加到中的一個帶有時間戳記的MESSAGES表中。基於預先定義好的時間間隔,客戶會從請求更新資訊,包括自上一次從請求資訊到現在為止追加到中的訊息列表和聯機使用者列表。

  客戶將通過XMLHTTP對象發送一個到。動作(action)要麼是請求重新整理訊息和使用者列表,要麼是發送一個新訊息。這些動作儲存在一個叫做ACTIONS的表中。將響應相應的請求或者接受一個新訊息然後追加到MESSAGES表中。

  當響應一個訊息的請求的時候,會返回上次請求之後的所有新訊息的一個列表。為了跟蹤客戶的活動,我使用一個ACTIVITY表包含客戶活動的日期時間(datetime),客戶的標識儲存在表HANDLES中,該表的名字很直觀。

  下面是建表的指令碼:

  

  所有的資料操作將通過預存程序完成。所有的資料介面將通過一個充當Web和2000的聯絡員的泛型COM完成。COM對象暴露一個我要使用的方法RunSPReturnStream。該方法的第一個參數為預存程序的名字,第二個參數是參數數組的數組。參數數組是一個如下格式的簡單數組:(paraName,paramType,paramLength,paramValue)。paramType是ADOParameterType枚舉之一。一個ASP頁面負責接受動作和建立響應,我把它叫做HandleAction.asp。

  聊天頁面將包含一個地區顯示聊天訊息;這個地區是一個包含在DIV的TABLE。這個TABLE被綁定到一個xmlMessagesXML資料島上。另外一個地區顯示當前的使用者;這個地區也是一個包含在DIV中的TABLE,它被綁定到一個xmlUsersXML資料島上。另外還有一個TEXTAREA供使用者輸入訊息。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。