連接器200,可W包括兩個簡單連接器和一個綁定器。 實例URI208是兩層URI,具有第一HTTP層和第二XMPP層。在URI相關(guān)的事件后,例如, 點擊超鏈接或提交表單,URI208可W由瀏覽器接收。一旦識別為分層URI,瀏覽器(未描 畫)就可W調(diào)用使用解除引用擴(kuò)展來對分層URI208解除引用的復(fù)雜連接器200。復(fù)雜連 接器200可W調(diào)用簡單連接器202和206W及綁定器204的攔截器鏈。攔截器鏈調(diào)用可W 包括通過簡單HTTP連接器202經(jīng)由HTTP請求將URI208傳遞到HTTP/XMPP綁定器204。 HTTP/XMPP綁定器204可W將XMPP節(jié)傳遞到簡單XMPP連接器206,所述簡單XMPP連接器與 綁定器204 -起可W經(jīng)由HTTP響應(yīng)獲取傳遞回到簡單HTTP連接器202的HTTP信息。簡 單HTTP連接器202可W通過將例如HTML文檔對象模型值OM)的有效負(fù)荷數(shù)據(jù)傳遞回到瀏 覽器來完成URI的復(fù)雜連接器200解除引用。
[0022] 連接器和綁定器可W利用用戶代理使用化vaScript來創(chuàng)建和寄存。所屬領(lǐng)域 的技術(shù)人員可W明白用于創(chuàng)建和寄存連接器和綁定器的技術(shù)且所述技術(shù)可W單獨(dú)地或結(jié) 合其它已知技術(shù)來使用。例如,一個化vaScript片段可W包含用于從例如瀏覽器的用 戶代理獲得例如圖4的連接器408的HTTP連接器的指令,例如varconnectorl=new HTTPConnector0。另一片段可W包含用于實施例如圖4的連接器414的第二連接器的指 令,即,用于通過用XMPP庫創(chuàng)建例如通過遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器加載到瀏覽器中的新XMPP客戶端 來實施所述連接器的指令,例如varxmpp=newXMPP( "talk,google,com")。另一片段 可W包含用于用化vaScript創(chuàng)建用于XMPP的連接器的指令,例如varconnector2 =new Connector狂MP巧。又另一片段可W包含用于實施例如圖4的連接器418的第S連接器的 指令,即,用于通過從用戶代理創(chuàng)建WS來實施所述連接器的指令,例如varsocket=new websocket(…),W及用于通過用化vaScript創(chuàng)建用于WS的連接器來實施所述連接器的指 令,例如varconnectors=newConnector(socket)。再另一片段可W包含用于創(chuàng)建和實 施例如圖4的綁定器416的用于綁定第二連接器和第S連接器的第一綁定器的指令,例如 varbinder。=newBinder(connectors,connectors)。另一片段可W包含用于實施例如 圖4的第二復(fù)雜連接器412的包括第一綁定器的第四連接器的指令,例如varconnector。 =newConnectorAinderl2)。又另一片段可W包含用于創(chuàng)建和實施例如圖4的綁定器410 的第二綁定器的指令,例如varbinderOl=newBinder(connectorO,connector。),W及 用于創(chuàng)建和實施例如圖4的第一復(fù)雜連接器400的新連接器的指令,例如varconnectorOl =newConnectorAinderOl)。再另一片段可W包含用于將HTTP/XMPP連接器告知用戶代 理的指令,例如,Connectors,register( "ht1:p/xm卵",connectorOl)。因為連接器對象在 用戶代理與用戶化vaScript之間交換,所W連接器接口應(yīng)該由所有瀏覽器和所有網(wǎng)絡(luò)應(yīng) 用程序協(xié)定。出于此原因,標(biāo)準(zhǔn)化可能是所希望的。
[0023] 圖3是用于實例復(fù)雜連接器的實施矩陣300。如上文所陳述,簡單連接器可W或者 用化vaScript或者用網(wǎng)絡(luò)瀏覽器實施。此外,每一復(fù)雜連接器可W包括用于對分層URI解 除引用的兩個或更多個簡單連接器。矩陣300示出用于實施例如圖2的簡單連接器202和 206的簡單連接器P1和P2的組合和排列,所述簡單連接器用于對例如圖2的分層URI208 的分層URI解除引用。如矩陣300中示出且如上文在圖2下所陳述,簡單連接器可W或者 用化vaScript實施或者用瀏覽器實施。因此,P1與化vaScript行和瀏覽器行相關(guān)聯(lián),且 P2還與化vaScript列和瀏覽器列相關(guān)聯(lián)。矩陣300的重疊方框示出針對給定行/列的P1/ P2組合。當(dāng)分層URI具有超過兩層,因此需要超過兩個用于解除引用的簡單連接器時,矩陣 300可W擴(kuò)張,從而導(dǎo)致在圖4下進(jìn)一步說明的遞歸嵌套。當(dāng)簡單連接器用化vaScript實 施時,最終調(diào)用用瀏覽器實施的簡單連接器可能必需對URI解除引用。
[0024] 圖4描繪用于使用化vaScript對在網(wǎng)絡(luò)瀏覽器中的分層URI解除引用的第一復(fù) 雜連接器400的另一實施例。圖4包含分層URI402,所述分層URI包含HTTP和XMPP層。 圖4假設(shè)所述瀏覽器不支持XMPP,并且還假設(shè)WS是用于XMPP層的底層傳輸協(xié)議。因此,對 URI解除引用需要至少S個連接器。圖4包含對URI404解除引用的調(diào)用,例如在URI事件 后由網(wǎng)絡(luò)瀏覽器進(jìn)行的調(diào)用;URI解除引用擴(kuò)展406 ;簡單HTTP連接器408,例如圖2的連接 器202 ;HTTP/XMPP綁定器410,例如圖2的綁定器204 ;W及第二復(fù)雜連接器412,使得第二 復(fù)雜連接器412遞歸嵌套在第一復(fù)雜連接器400內(nèi)。第二復(fù)雜連接器412包括簡單XMPP連 接器414、XMPP/WS綁定器416化及簡單WS連接器418。圖4假設(shè)所述瀏覽器(未描畫)支 持HTTP和WS層找,但不支持XMPP。因此,第一復(fù)雜連接器400可W包括化vaScriptXMPP 連接器414、網(wǎng)絡(luò)瀏覽器WS連接器418化及HTTP連接器408。嵌套的復(fù)雜連接器因此可W 形成被URI解除引用擴(kuò)展406用來對分層URI402解除引用的遞歸嵌套式攔截器鏈。
[0025] 圖5是描述圖4的實施例的對分層URI解除引用的過程500的流程圖。在圖4的 框中提及的組件與圖4的相同組件相對應(yīng)。圖5的兩列示出為通過線501分隔開,其中第 一列中的框在例如圖1的用戶設(shè)備100的發(fā)送方設(shè)備處出現(xiàn),且第二列中的框在例如圖2 的服務(wù)器102的接收方設(shè)備處出現(xiàn)。過程400可W在402處WURI事件開始,例如,點擊按 鈕、提交表單等,所述事件使得在發(fā)送用戶側(cè)上的瀏覽器試圖對分層HTTP/XMPP/WSURI解 除引用。因為圖4假設(shè)瀏覽器不支持XMPP,所W在框404處,可W調(diào)用URI解除引用擴(kuò)展。 URI解除引用擴(kuò)展可W從例如圖2的連接器202的簡單HTTP連接器、例如圖2的綁定器204 的HTTP/XMPP綁定器W及第二復(fù)雜XMPP/WS連接器(包括兩個簡單連接器和一個綁定器) 動態(tài)地構(gòu)成或?qū)嵗瘡?fù)雜HTTP/XMPP連接器,W基于分層URI中所包含的層形成攔截器鏈。 如所屬領(lǐng)域的技術(shù)人員將理解,不同的分層URI解除引用結(jié)構(gòu)可W基于基于本發(fā)明的URI 特定的協(xié)議找W不同方式動態(tài)地構(gòu)造,如W下在圖5中說明。URI解除引用擴(kuò)展可W通過框 406將例如表單等原始數(shù)據(jù)傳遞到在框408處的HTTP連接器。HTTP連接器可W通過框510 向在框512處的HTTP/XMPP綁定器發(fā)出HTTP請求,所述綁定器可W基于綁定器中所包含的 映射對HTTP/XMPP節(jié)進(jìn)行編碼。在框514處,通過HTTP/XMPP綁定器創(chuàng)建的HTTP/XMPP節(jié) 可W傳遞到框516的XMPP連接器,所述連接器可W基于綁定器中所包含的映射對XMPP節(jié) 進(jìn)行編碼。
[0026] 如在圖4下所陳述,XMPP大體上需要底層雙向通信協(xié)議。因此,盡管未明確地在 URI中陳述,但XMPP可W使用WS建立所需的雙向連接;其它實施例可W采用替代協(xié)議。因 此,在框518處,XMPP節(jié)可W通過XMPP連接器傳遞到框520的XMPP/WS綁定器,所述綁定器 在框522處向框524的WS連接器發(fā)送WS消息???24的WS連接器可W將在框526處的 WS消息傳遞到具有經(jīng)相對應(yīng)地構(gòu)造的URI解除引用擴(kuò)展的接收用戶。在接收WS消息后,框 528的XMPP/WS綁定器可W從WS消息獲取框430的XMPP節(jié)且將其發(fā)送到框532的XMPP連 接器。類似地,XMPP連接器可W從框530的XMPP節(jié)獲取框534的HTTP/XMPP節(jié)且可W將 HTTP/XMPP節(jié)傳遞到框536的HTTP/XMPP綁定器。HTTP/XMPP綁定器可W將框538的HTTP 響應(yīng)發(fā)送到框540的HTTP連接器。HTTP連接器可W處理HTTP響應(yīng)且可W將框542的有效 負(fù)荷數(shù)據(jù)發(fā)送到框544的URI解除引用擴(kuò)展。在框546處,DOM可W基于有效負(fù)荷數(shù)據(jù)進(jìn) 行更新。
[0027] 圖6描繪用于使用化vaScript對在網(wǎng)絡(luò)瀏覽器中的分層URI解除引用的第一復(fù) 雜連接器500的再另一個實施例。圖6圖示用于基于URI特定的協(xié)議找W不同方式動態(tài)地 構(gòu)造不同的分層URI解除引用架構(gòu)的系統(tǒng)和方法的實施例。圖6包含分層URI602,例如圖 4的分層URI402 ;對URI604解除引用的調(diào)用;URI解除引用擴(kuò)展606 ;簡單連接器608,例 如圖