專利名稱:用于獲得應(yīng)用數(shù)據(jù)的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及獲得應(yīng)用數(shù)據(jù),特別涉及一種在將在客戶端上輸入的應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用之前確??蛻舳撕途W(wǎng)絡(luò)應(yīng)用之間的會話有效的方法、系統(tǒng)和程序產(chǎn)品。
背景技術(shù):
用戶頻繁地使用計算機(jī)輸入數(shù)據(jù),并且將該數(shù)據(jù)提交給位于通過諸如因特網(wǎng)的網(wǎng)絡(luò)連接的服務(wù)器上的網(wǎng)絡(luò)應(yīng)用(application)。為了將數(shù)據(jù)提供給網(wǎng)絡(luò)應(yīng)用,計算機(jī)通常與網(wǎng)絡(luò)應(yīng)用建立會話。例如,計算機(jī)可以通過網(wǎng)絡(luò)發(fā)送會話請求,并且網(wǎng)絡(luò)應(yīng)用可以以會話標(biāo)識符響應(yīng)。一旦建立了會話,網(wǎng)絡(luò)應(yīng)用就發(fā)送一個或多個頁面到計算機(jī),計算機(jī)向用戶顯示這個(些)頁面。每個頁面可以包括諸如射頻按鈕(radio box)、復(fù)選框、下拉式列表、編輯框等的數(shù)據(jù)輸入?yún)^(qū)域的任何組合。使用這些數(shù)據(jù)輸入?yún)^(qū)域,用戶可以輸入數(shù)據(jù)。一旦輸入了所有數(shù)據(jù),用戶就可以通過例如單擊頁面中的按鈕來請求將其發(fā)送到網(wǎng)絡(luò)應(yīng)用。
經(jīng)常地,網(wǎng)絡(luò)應(yīng)用將同時維持與不同計算機(jī)的許多會話。然而,會話可能由于丟失計算機(jī)與網(wǎng)絡(luò)應(yīng)用之間的通信而頻繁地意外終止。例如,計算機(jī)可能丟失其與網(wǎng)絡(luò)的連接,掉電,應(yīng)用可能意外終止等。因此,為了從當(dāng)前維持的會話中刪除這些會話,當(dāng)在特定時間段之后沒有接收到任何通信時,網(wǎng)絡(luò)應(yīng)用將結(jié)束會話。另外,當(dāng)在會話期間傳輸保密或時間敏感數(shù)據(jù)時,網(wǎng)絡(luò)應(yīng)用可以提供必須在其內(nèi)從計算機(jī)提交數(shù)據(jù)的限定時間。
目前,當(dāng)網(wǎng)絡(luò)應(yīng)用在其會話期滿之后從計算機(jī)接收消息時,網(wǎng)絡(luò)應(yīng)用將拒絕該消息,并且必須建立新會話。例如,網(wǎng)絡(luò)應(yīng)用可以向用戶通知會話已期滿,并且/或者提供登錄頁面以允許用戶建立新會話。然而,在重定向到登錄頁面之后,包括輸入數(shù)據(jù)的頁面可能在計算機(jī)上不再可用。在這種情形下,數(shù)據(jù)將丟失,并且將需要用戶重新輸入數(shù)據(jù)。
隨著提交給網(wǎng)絡(luò)應(yīng)用的數(shù)據(jù)變得日益復(fù)雜,數(shù)據(jù)重新輸入對于用戶而言變得愈加不便。這導(dǎo)致用戶產(chǎn)生嚴(yán)重的挫折感。例如,數(shù)據(jù)頁面可能請求當(dāng)前所發(fā)定單的發(fā)貨信息和付款信息。在填寫該信息的時候,用戶可能會分神,例如接電話。這樣,一旦填完所需信息并且將其提交給網(wǎng)絡(luò)應(yīng)用,會話就可能已期滿,從而使用戶被重定向到登錄頁面。在這種情況下,用戶然后將需要從頭開始重新輸入所需信息。
因此,需要一種用于獲得應(yīng)用數(shù)據(jù)的改進(jìn)式解決方案。具體地說,需要一種在將客戶端上輸入的應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用之前確??蛻舳撕途W(wǎng)絡(luò)應(yīng)用之間的會話有效的方法、系統(tǒng)和程序產(chǎn)品。如此,在用戶正在輸入應(yīng)用數(shù)據(jù)的時候,如果會話期滿,則可以保持用戶已輸入的應(yīng)用數(shù)據(jù)。
發(fā)明內(nèi)容
本發(fā)明提供了一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的改進(jìn)式解決方案。具體地說,在本發(fā)明下,在網(wǎng)絡(luò)應(yīng)用與客戶端之間建立會話。將一個或多個數(shù)據(jù)頁面提供給允許用戶輸入應(yīng)用數(shù)據(jù)的客戶端。在將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用之前,確保會話有效。在一個實施例中,數(shù)據(jù)頁面包括確定當(dāng)用戶請求提交應(yīng)用數(shù)據(jù)時剩余的會話時間的指令。如果剩余會話時間表示會話可能已期滿因此可能不再有效,則可以向網(wǎng)絡(luò)應(yīng)用查詢以確定會話的狀態(tài)。如果會話無效,則可以在網(wǎng)絡(luò)應(yīng)用與客戶端之間建立新會話。在任何情況下,一旦確保了有效會話,則可以將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用。
本發(fā)明的第一方面提供了一種獲得應(yīng)用數(shù)據(jù)的方法,該方法包括在會話期間從網(wǎng)絡(luò)應(yīng)用獲得數(shù)據(jù)頁面;使用數(shù)據(jù)頁面接收應(yīng)用數(shù)據(jù);確保會話有效;以及當(dāng)會話有效時將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用。
本發(fā)明的第二方面提供了一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的方法,該方法包括與客戶端建立會話;將數(shù)據(jù)頁面提供給客戶端,其中數(shù)據(jù)頁面確保在提交應(yīng)用數(shù)據(jù)之前會話有效;以及從客戶端接收應(yīng)用數(shù)據(jù)。
本發(fā)明的第三方面提供了一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的系統(tǒng),該系統(tǒng)包括會話系統(tǒng),用于與客戶端建立會話;以及數(shù)據(jù)系統(tǒng),用于將數(shù)據(jù)頁面提供給客戶端并且從客戶端接收應(yīng)用數(shù)據(jù);其中數(shù)據(jù)頁面確保在提交應(yīng)用數(shù)據(jù)之前會話有效。
本發(fā)明的第四方面提供了一種存儲在可記錄介質(zhì)上的、用于獲得應(yīng)用數(shù)據(jù)的程序產(chǎn)品,當(dāng)執(zhí)行該程序產(chǎn)品時,其包括用于使用數(shù)據(jù)頁面接收應(yīng)用數(shù)據(jù)的程序代碼;用于確保與網(wǎng)絡(luò)應(yīng)用的會話有效的程序代碼;以及用于當(dāng)會話有效時將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用的程序代碼。
本發(fā)明的各個說明性方面設(shè)計成解決在此所述的問題和可由本領(lǐng)域的技術(shù)人員發(fā)現(xiàn)的未討論的其他問題。
通過結(jié)合示出本發(fā)明各個實施例的附圖對本發(fā)明的各方面進(jìn)行詳細(xì)描述,本發(fā)明的這些和其他特征將變得更加容易理解,其中圖1示出用于獲得應(yīng)用數(shù)據(jù)的說明性系統(tǒng);圖2示出用于輸入應(yīng)用數(shù)據(jù)的說明性數(shù)據(jù)頁面;圖3示出用于建立會話的說明性登錄頁面;圖4示出用于獲得應(yīng)用數(shù)據(jù)的說明性方法步驟;圖5示出用于確保會話有效的說明性方法步驟。
注意本發(fā)明的附圖不是按比例繪制的。附圖僅僅旨在描述本發(fā)明的典型方面,因此不應(yīng)被認(rèn)為是限制本發(fā)明的范圍。在附圖中,相同的標(biāo)號表示附圖之間的相同單元。
具體實施例方式
如上所述,本發(fā)明提供了一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的改進(jìn)式解決方案。具體地說,在本發(fā)明下,在網(wǎng)絡(luò)應(yīng)用與客戶端之間建立會話。將一個或多個數(shù)據(jù)頁面提供給允許用戶輸入應(yīng)用數(shù)據(jù)的客戶端。在將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用之前,確保會話有效。在一個實施例中,數(shù)據(jù)頁面包括確定當(dāng)用戶請求提交應(yīng)用數(shù)據(jù)時剩余的會話時間的指令。如果剩余會話時間表示會話可能已期滿因此可能不再有效,則可以向網(wǎng)絡(luò)應(yīng)用查詢以確定會話的狀態(tài)。如果會話無效,則可以在網(wǎng)絡(luò)應(yīng)用與客戶端之間建立新會話。在任何情況下,一旦確保了有效會話,則可以將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用。
參照附圖,圖1示出用于獲得應(yīng)用數(shù)據(jù)的說明性系統(tǒng)10。具體地說,用戶15在客戶端14上為網(wǎng)絡(luò)應(yīng)用30輸入應(yīng)用數(shù)據(jù),客戶端14通過網(wǎng)絡(luò)16將應(yīng)用數(shù)據(jù)傳送到服務(wù)器12。就此而言,網(wǎng)絡(luò)16可以包括任何類型的通信鏈路。例如,網(wǎng)絡(luò)16可以包括可以利用有線和/或無線傳輸方法的任何組合的客戶端-服務(wù)器(或服務(wù)器-服務(wù)器)環(huán)境中的可尋址連接。在這種情況下,服務(wù)器12和客戶端14可以利用傳統(tǒng)網(wǎng)絡(luò)連接性,例如令牌環(huán)、以太網(wǎng)、WiFi或其他傳統(tǒng)通信標(biāo)準(zhǔn)。此外,網(wǎng)絡(luò)16還可以包括任何類型的網(wǎng)絡(luò),包括因特網(wǎng)、廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、虛擬私有網(wǎng)絡(luò)(VPN)等。在客戶端14通過因特網(wǎng)與服務(wù)器12通信的情況下,連接性可以由傳統(tǒng)的基于TCP/IP接口(socket)的協(xié)議提供,并且客戶端14可以利用因特網(wǎng)服務(wù)提供商來建立與服務(wù)器12的連接性。
如圖所示,服務(wù)器12一般包括中央處理單元(CPU)18、存儲器20、輸入/輸出(I/O)接口22、總線24、外部I/O設(shè)備/資源26以及存儲單元28。CPU18可以包括單個處理單元,或者分布到一處或多處例如客戶端和服務(wù)器上的一個或多個處理單元上。存儲器20可以包括任何公知類型的數(shù)據(jù)存儲和/或傳輸介質(zhì),包括磁介質(zhì)、光介質(zhì)、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、數(shù)據(jù)高速緩沖存儲器、數(shù)據(jù)對象等。存儲單元28可以包括任何類型的數(shù)據(jù)存儲設(shè)備,用于為執(zhí)行如下所述的本發(fā)明所需的信息提供存儲。同樣地,存儲單元28可以包括一個或多個存儲設(shè)備,諸如磁盤驅(qū)動器或光盤驅(qū)動器。而且,類似于CPU 18,存儲器20和/或存儲單元28可以駐留于單個物理位置,包括一種或多種類型的數(shù)據(jù)存儲單元,或者可以分布到各種形式的多個物理系統(tǒng)上。此外,存儲器20和/或存儲單元28可以包括分布在例如LAN、WAN或存儲區(qū)域網(wǎng)(SAN)(未示出)中的數(shù)據(jù)。
I/O接口22可以包括任何用于與一個或多個外部I/O設(shè)備26交換信息的系統(tǒng)。I/O設(shè)備26可以包括任何公知類型的外部設(shè)備,包括揚聲器、CRT、LED屏幕、手持設(shè)備、鍵盤、鼠標(biāo)、聲音識別系統(tǒng)、語音輸出系統(tǒng)、打印機(jī)、監(jiān)視器/顯示器、傳真機(jī)、尋呼機(jī)、通信硬件/軟件等??偩€24在服務(wù)器12的各個組件之間提供通信鏈路,并且同樣可以包括任何公知類型的傳輸鏈路,包括電、光、無線等。此外,雖然未示出,可以將諸如系統(tǒng)軟件的附加組件加入到服務(wù)器12中。
此外,應(yīng)該理解,服務(wù)器12包括能夠與一個或多個其他計算設(shè)備(例如,客戶端14)通信的任何類型的計算設(shè)備。類似地,客戶端14可以包括任何類型的計算設(shè)備,例如服務(wù)器、桌面計算機(jī)、膝上型計算機(jī)、手持設(shè)備、移動電話、尋呼機(jī)、個人數(shù)據(jù)助理等等。就此而言,客戶端14典型地包括如服務(wù)器12所示的相同單元(例如,CPU、存儲器、I/O接口等)。為了簡潔起見,在此未單獨示出它們。然而,應(yīng)該理解,如果客戶端14是手持設(shè)備等,則顯示器可以包含在客戶端14內(nèi),而不與服務(wù)器12所示的外部I/O設(shè)備26一樣。
圖中示出了服務(wù)器12包括可以將一個或多個頁面32發(fā)送到客戶端14的網(wǎng)絡(luò)應(yīng)用30。在客戶端14上,顯示系統(tǒng)34可以向用戶15顯示頁面32。用戶15可以使用頁面32將應(yīng)用數(shù)據(jù)提供給網(wǎng)絡(luò)應(yīng)用30。圖中示出了網(wǎng)絡(luò)應(yīng)用30包括會話系統(tǒng)36和數(shù)據(jù)系統(tǒng)38,它們管理(regulate)和允許用戶15提供應(yīng)用數(shù)據(jù)。具體地說,會話系統(tǒng)36建立并維護(hù)與一個或多個客戶端14的會話。當(dāng)客戶端14具有有效會話時,數(shù)據(jù)系統(tǒng)38可以獲得用戶15在客戶端14上輸入的應(yīng)用數(shù)據(jù)。應(yīng)該理解,圖1所示的各系統(tǒng)中的一些可以獨立實現(xiàn)、組合和/或存儲在通過網(wǎng)絡(luò)通信的一個或多個單獨服務(wù)器12的存儲器中。例如,會話系統(tǒng)36可以與網(wǎng)絡(luò)應(yīng)用30分開實現(xiàn)。此外,應(yīng)該理解,可以不實現(xiàn)某些系統(tǒng)和/或功能性,或者可以包括附加系統(tǒng)和/或功能性作為系統(tǒng)10的一部分。
如前所述,數(shù)據(jù)系統(tǒng)38可以使用一個或多個頁面32獲得應(yīng)用數(shù)據(jù)。具體地說,數(shù)據(jù)系統(tǒng)38可以將頁面32提供給客戶端14,并且顯示系統(tǒng)34可以使用一個或多個窗口向用戶15顯示頁面32。例如,顯示系統(tǒng)34可以創(chuàng)建顯示第一頁面32的窗口。當(dāng)客戶端14隨后接收到新頁面32時,顯示系統(tǒng)34可以創(chuàng)建新窗口以顯示新頁面32,或者使用相同窗口以顯示新頁面32。在后者情況下,新頁面32可以更換先前顯示的頁面32,或者可以在該窗口內(nèi)同時顯示兩個頁面32的一些或全部。在一個實施例中,顯示系統(tǒng)34包括瀏覽器,而頁面32包括網(wǎng)頁。
為了獲得應(yīng)用數(shù)據(jù),數(shù)據(jù)系統(tǒng)38可以將一個或多個“數(shù)據(jù)頁面”提供給客戶端14。數(shù)據(jù)頁面是一種允許用戶15輸入應(yīng)用數(shù)據(jù)的頁面32。就此而言,數(shù)據(jù)頁面可以包括一組(一個或多個)數(shù)據(jù)輸入?yún)^(qū)域(例如,射頻按鈕、復(fù)選框、下拉式列表、編輯框、按鈕等),以及/或者一組動作區(qū)域(例如,提交、取消、復(fù)位等)。結(jié)果,用戶15可以使用這組數(shù)據(jù)輸入?yún)^(qū)域提供應(yīng)用數(shù)據(jù),并且使用這組動作區(qū)域來選擇要對應(yīng)用數(shù)據(jù)執(zhí)行的所需動作。取決于所選動作,可以將應(yīng)用數(shù)據(jù)傳送到數(shù)據(jù)系統(tǒng)38。
例如,現(xiàn)在參照圖1和2,圖2示出可以由顯示系統(tǒng)34創(chuàng)建的窗口50內(nèi)所顯示的說明性數(shù)據(jù)頁面40。數(shù)據(jù)頁面40允許用戶15提供應(yīng)用數(shù)據(jù),例如創(chuàng)建電子消息。具體地說,數(shù)據(jù)頁面40包括各種數(shù)據(jù)輸入?yún)^(qū)域,例如用于指定一個或多個電子消息收件人的收件人編輯框42,以及用于輸入電子消息內(nèi)容的消息編輯框44。此外,數(shù)據(jù)頁面40可以包括允許用戶15指定要對電子消息執(zhí)行的所需動作的各種動作區(qū)域。例如,圖中示出了數(shù)據(jù)頁面40包括用于發(fā)送所完成的電子消息的發(fā)送按鈕46,以及用于取消電子消息的取消按鈕48。
網(wǎng)絡(luò)應(yīng)用30可以限制對數(shù)據(jù)頁面40的訪問。例如,網(wǎng)絡(luò)應(yīng)用30可以限制同時提供應(yīng)用數(shù)據(jù)的用戶15的數(shù)目,可以僅允許特定用戶15提供應(yīng)用數(shù)據(jù)等。就此而言,會話系統(tǒng)36可能要求在可以將數(shù)據(jù)頁面40提供給客戶端14之前與客戶端14建立會話。會話的使用允許網(wǎng)絡(luò)應(yīng)用30限制對數(shù)據(jù)頁面40的訪問,因此根據(jù)需要限制可以提交應(yīng)用數(shù)據(jù)的用戶15。
為了建立會話,會話系統(tǒng)36可能要求該用戶15提供標(biāo)識。例如,會話系統(tǒng)36可以將登錄頁面提供給允許用戶15提供用戶名和密碼的客戶端14。一旦輸入,登錄頁面就可以允許用戶15使用“登錄”動作區(qū)域等請求那個客戶端14將登錄數(shù)據(jù)提交給會話系統(tǒng)36。一旦從客戶端14接收到登錄數(shù)據(jù),會話系統(tǒng)36就可以通過例如將所接收的登錄數(shù)據(jù)與存儲在存儲單元28中的一個或多個用戶名/密碼條目進(jìn)行比較來驗證登錄數(shù)據(jù)。當(dāng)?shù)卿洈?shù)據(jù)有效(例如,匹配存儲在存儲單元28中的條目)時,會話系統(tǒng)36可以完成與客戶端14建立會話。例如,一旦建立了會話,會話系統(tǒng)36就可以提供會話標(biāo)識符給客戶端14和/或提供向用戶15顯示的初始頁面32。
網(wǎng)絡(luò)應(yīng)用30可以具有同時與若干客戶端14建立的多個會話。由于客戶端14與服務(wù)器12之間的通信可能意外終止,因此網(wǎng)絡(luò)應(yīng)用30不能總是接收到客戶端14希望終止其會話的通知。此外,會話還可能在不活動的特定時間段和/或由于安全性原因的特定時間段之后終止,從而釋放臨時保留的資源等。這樣,網(wǎng)絡(luò)應(yīng)用30可能由于不活動時間限制等而周期性地使會話期滿。
例如,網(wǎng)絡(luò)應(yīng)用30可能要求每個會話在自前一活動起三十分鐘內(nèi)具有某活動(例如與網(wǎng)絡(luò)應(yīng)用30的通信),以便保持有效。假定在該會話期間將數(shù)據(jù)頁面40提供給客戶端14,則用戶15將有大約三十分鐘來創(chuàng)建電子消息并將它提交給數(shù)據(jù)系統(tǒng)38。或者,用戶15可以通過在數(shù)據(jù)頁面40打開時執(zhí)行其他動作(例如,使用顯示在不同窗口中的不同頁面檢查新消息)來保持會話有效。在任何情況下,當(dāng)在有效會話期間內(nèi)提交了應(yīng)用數(shù)據(jù)(例如電子消息)時,數(shù)據(jù)系統(tǒng)38將處理所提交的應(yīng)用數(shù)據(jù)。否則,網(wǎng)絡(luò)應(yīng)用30將拒絕應(yīng)用數(shù)據(jù)。
如前所述,當(dāng)應(yīng)用數(shù)據(jù)被網(wǎng)絡(luò)應(yīng)用30拒絕時,應(yīng)用數(shù)據(jù)將需要由用戶15重新輸入。為了防止重新輸入應(yīng)用數(shù)據(jù),數(shù)據(jù)頁面40可以確保在將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用30之前會話有效。在一個實施例中,數(shù)據(jù)頁面40通過確定會話是否可能已期滿來確保會話有效。如果會話可能已期滿,則數(shù)據(jù)頁面40可以確定會話是否保持有效,并且如果否,則建立新會話。
在一個實施例中,數(shù)據(jù)頁面40可以包括指定當(dāng)數(shù)據(jù)頁面40發(fā)送到客戶端14以作顯示時會話的剩余會話時間的變量。例如,剩余會話時間可以包括會話超時值,該會話超時值表示客戶端14必須與網(wǎng)絡(luò)應(yīng)用30通信以便保持會話活動的時間量。此外,當(dāng)顯示系統(tǒng)34顯示數(shù)據(jù)頁面40時,可以獲得顯示時間。例如,數(shù)據(jù)頁面40可以包括從客戶端14獲得當(dāng)前時間的指令。隨后,用戶15可以輸入電子消息的數(shù)據(jù),并且通過點擊發(fā)送按鈕46來請求提交電子消息。一旦接收到提交請求,則數(shù)據(jù)頁面40可以確定提交請求的提交時間。例如,數(shù)據(jù)頁面可以再次從客戶端14獲得當(dāng)前時間。然后,數(shù)據(jù)頁面40可以計算提交時間與顯示時間之差,并且將該差值與剩余會話時間進(jìn)行比較,以確定會話是否可能不再有效。
如果該比較表示剩余會話時間可能已期滿,則數(shù)據(jù)頁面40可以向網(wǎng)絡(luò)應(yīng)用30查詢會話狀態(tài)。例如,當(dāng)提交時間與顯示時間之差大于或等于剩余會話時間和/或小于剩余會話時間一閾值時間量(例如,5秒)時,剩余會話時間可能已期滿。在任何情況下,如果剩余會話時間可能已期滿,則數(shù)據(jù)頁面40可以通過發(fā)送請求到網(wǎng)絡(luò)應(yīng)用30來向網(wǎng)絡(luò)應(yīng)用30查詢。該請求可以包括任何命令,對其的響應(yīng)將表明會話狀態(tài)。在一個實施例中,該請求包括不影響數(shù)據(jù)頁面40的顯示的背景請求。響應(yīng)于該請求,如果會話狀態(tài)保持有效,則網(wǎng)絡(luò)應(yīng)用30可以以肯定答復(fù)來響應(yīng)。
當(dāng)會話狀態(tài)無效時,網(wǎng)絡(luò)應(yīng)用30可以以否定答復(fù)、錯誤響應(yīng)等來響應(yīng)。在一個實施例中,網(wǎng)絡(luò)應(yīng)用30可以以登錄頁面響應(yīng),從而允許用戶15建立新會話。在這種情況下,數(shù)據(jù)頁面40可以確定接收到登錄頁面,并且識別出會話無效。例如,登錄頁面可以包括將其識別為登錄頁面的屬性。這樣,數(shù)據(jù)頁面40可以通過分析該屬性來確定接收到登錄頁面。
在任何情況下,當(dāng)數(shù)據(jù)頁面40確定會話狀態(tài)無效時,數(shù)據(jù)頁面40可以向用戶15通知,并且允許用戶15建立新會話以提交應(yīng)用數(shù)據(jù)。當(dāng)用戶15希望建立新會話時,數(shù)據(jù)頁面40可以與網(wǎng)絡(luò)應(yīng)用30建立新會話。例如,如上所述,網(wǎng)絡(luò)應(yīng)用30可以以登錄頁面響應(yīng)該請求。在這種情況下,顯示系統(tǒng)34可以顯示登錄頁面,以允許用戶15輸入登錄數(shù)據(jù)并且建立新會話。圖3示出由顯示系統(tǒng)34在第二窗口54中顯示的說明性登錄頁面52。通過在第二窗口54中顯示登錄頁面52,保持在數(shù)據(jù)頁面40上輸入的應(yīng)用數(shù)據(jù)。這樣,獲得登錄數(shù)據(jù)并且將登錄數(shù)據(jù)提交給會話系統(tǒng)36不導(dǎo)致在數(shù)據(jù)頁面40上輸入的應(yīng)用數(shù)據(jù)的丟失。如此,可以建立新會話而不丟失應(yīng)用數(shù)據(jù)。
在任何情況下,一旦數(shù)據(jù)頁面40確保了會話有效,則可以將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用30。由于會話有效,應(yīng)用數(shù)據(jù)應(yīng)由數(shù)據(jù)系統(tǒng)38接收,并作相應(yīng)處理。例如,使用數(shù)據(jù)頁面40創(chuàng)建的電子消息將轉(zhuǎn)發(fā)到在收件人文本框42(圖2)中指定的每一個收件人。這樣,大大降低了應(yīng)用數(shù)據(jù)將由于無效會話而丟失的風(fēng)險。
圖4示出可以由圖1所示的各個系統(tǒng)執(zhí)行的用于獲得應(yīng)用數(shù)據(jù)的說明性方法步驟。在步驟S1,客戶端14與網(wǎng)絡(luò)應(yīng)用30建立會話。在步驟S2,使用一個或多個頁面32獲得應(yīng)用數(shù)據(jù),并且在步驟S3,從用戶15接收提交請求。在步驟S4,頁面32確保存在與網(wǎng)絡(luò)應(yīng)用30的有效會話,并且在步驟S5,當(dāng)會話有效時,將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用30。
如上所述,在沒有來自客戶端14的任何通信的情況下,過去特定時間之后,會話可能變得無效。圖5示出在這種情況下用于在步驟S4(圖4)確保會話有效的說明性方法步驟。在步驟S4A,頁面32獲得頁面32的顯示時間、顯示時間這一時刻或周圍時刻的剩余會話時間、以及接收到提交請求時的提交時間。在步驟S4B,頁面32使用前面獲得的各個時間來確定會話是否可能已期滿。如果會話時間尚未期滿,則會話應(yīng)有效。然而,如果會話時間可能已期滿,則在步驟S4C,頁面32可以向網(wǎng)絡(luò)應(yīng)用30查詢以確定會話的狀態(tài)。根據(jù)查詢結(jié)果,在步驟S4D,頁面32可以確定會話是否有效。如果否,則在步驟S4E,頁面32可以與網(wǎng)絡(luò)應(yīng)用30建立新會話。
雖然本發(fā)明是參照包括用于確保會話有效的指令的數(shù)據(jù)頁面40(圖2)和/或頁面32來討論的,但是應(yīng)該理解,顯示系統(tǒng)34等能夠確保會話有效。例如,顯示系統(tǒng)34可以確定顯示數(shù)據(jù)頁面40的時間,并且確定當(dāng)接收到提交請求時會話是否有效。在這種情況下,數(shù)據(jù)頁面40可以包括請求顯示系統(tǒng)34確定會話是否有效的指令?;蛘?,網(wǎng)絡(luò)應(yīng)用30可以發(fā)送表示會話已期滿的消息到顯示系統(tǒng)34。在這種情況下,如果接收到該消息,則在接收到提交請求的情況下顯示系統(tǒng)34可以建立新會話。如果未接收到該消息,則不存在客戶端14和服務(wù)器12之間的任何通信,并且應(yīng)用數(shù)據(jù)將很有可能需要重新輸入。此外,在處理提交請求之前,顯示系統(tǒng)34和/或頁面32可以總是向網(wǎng)絡(luò)應(yīng)用30查詢,以確定會話是否有效。
應(yīng)該理解,本發(fā)明可以以硬件、軟件、或硬件和軟件的組合來實現(xiàn)。任何類型的計算機(jī)/服務(wù)器系統(tǒng)-或者適于執(zhí)行在此所述的方法的其他設(shè)備-是適合的。硬件和軟件的典型組合可以是采用計算機(jī)程序的通用計算機(jī)系統(tǒng),其中,當(dāng)裝載并執(zhí)行計算機(jī)程序時,該計算機(jī)程序執(zhí)行在此所述的各方法?;蛘?,可以利用包含用于執(zhí)行本發(fā)明的功能任務(wù)中的一項或多項的專用硬件的專用計算機(jī)(例如有限狀態(tài)機(jī))。本發(fā)明也可以嵌入在計算機(jī)程序產(chǎn)品中,該計算機(jī)產(chǎn)品包括能夠?qū)崿F(xiàn)在此所述的各方法并且-當(dāng)裝載在計算機(jī)系統(tǒng)中時-能夠執(zhí)行這些方法的所有各個特征。計算機(jī)程序、軟件程序、程序或軟件在本上下文中是指采用任何語言、代碼和表示法的一組指令的任何表達(dá),其中這組指令旨在使具有信息處理能力的系統(tǒng)直接地或者在以下操作(a)轉(zhuǎn)換成另一種語言、代碼或表示法;和/或(b)以不同材料形式再現(xiàn)中的任一項或兩者之后執(zhí)行特定功能。
前面對本發(fā)明各方面的描述是為了說明和描述的目的而給出的。它并不旨在是窮盡無遺漏的,或者將本發(fā)明限定于所公開的準(zhǔn)確形式,并且顯然,很多修改和變化是可能的。對于本領(lǐng)域技術(shù)人員而言顯而易見的這些修改和變化旨在包括在由所附權(quán)利要求限定的本發(fā)明范圍內(nèi)。
權(quán)利要求
1.一種獲得應(yīng)用數(shù)據(jù)的方法,該方法包括在會話期間從網(wǎng)絡(luò)應(yīng)用獲得數(shù)據(jù)頁面;使用數(shù)據(jù)頁面接收應(yīng)用數(shù)據(jù);確保會話有效;以及當(dāng)會話有效時將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用。
2.如權(quán)利要求1所述的方法,還包括與網(wǎng)絡(luò)應(yīng)用建立會話。
3.如權(quán)利要求1所述的方法,還包括接收應(yīng)用數(shù)據(jù)的提交請求。
4.如權(quán)利要求1所述的方法,其中確保步驟包括確定會話是否可能已期滿;以及如果會話可能已期滿,則向網(wǎng)絡(luò)應(yīng)用查詢會話狀態(tài)。
5.如權(quán)利要求4所述的方法,其中查詢步驟包括將請求發(fā)送到網(wǎng)絡(luò)應(yīng)用;以及確定是否響應(yīng)于該請求而從網(wǎng)絡(luò)應(yīng)用接收到登錄頁面。
6.如權(quán)利要求4所述的方法,其中確定步驟包括獲得第一時間這一時刻的剩余會話時間;確定提交請求的提交時間;以及將剩余會話時間與提交時間和第一時間之差進(jìn)行比較。
7.如權(quán)利要求6所述的方法,其中第一時間包括數(shù)據(jù)頁面的顯示時間。
8.如權(quán)利要求1所述的方法,其中確保步驟包括如果會話無效,則與網(wǎng)絡(luò)應(yīng)用建立另一個會話。
9.如權(quán)利要求8所述的方法,其中在第一窗口中顯示數(shù)據(jù)頁面,并且其中建立步驟包括在第二窗口中顯示登錄頁面。
10.一種為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的方法,該方法包括與客戶端建立會話;將數(shù)據(jù)頁面提供給客戶端,其中數(shù)據(jù)頁面確保在提交應(yīng)用數(shù)據(jù)之前會話有效;以及從客戶端接收應(yīng)用數(shù)據(jù)。
11.如權(quán)利要求10所述的方法,其中建立步驟包括將登錄頁面提供給客戶端;從客戶端接收登錄數(shù)據(jù);以及驗證登錄數(shù)據(jù)。
12.如權(quán)利要求10所述的方法,還包括從客戶端接收無效會話的請求;以及作為響應(yīng),將登錄頁面提供給客戶端。
13.如權(quán)利要求10所述的方法,其中數(shù)據(jù)頁面包括剩余會話時間。
14.如權(quán)利要求13所述的方法,其中數(shù)據(jù)頁面使用下列方法步驟確保會話有效確定數(shù)據(jù)頁面的顯示時間;確定提交請求的提交時間;以及將剩余會話時間與提交時間和第一時間之差進(jìn)行比較。
15.一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的系統(tǒng),該系統(tǒng)包括會話系統(tǒng),用于與客戶端建立會話;以及數(shù)據(jù)系統(tǒng),用于將數(shù)據(jù)頁面提供給客戶端并從客戶端接收應(yīng)用數(shù)據(jù);其中數(shù)據(jù)頁面確保在提交應(yīng)用數(shù)據(jù)之前會話有效。
16.如權(quán)利要求15所述的系統(tǒng),還包括用于向用戶顯示頁面的顯示系統(tǒng)。
17.如權(quán)利要求15所述的系統(tǒng),其中會話系統(tǒng)響應(yīng)于無效會話的請求將登錄頁面提供給客戶端。
18.一種存儲在可記錄介質(zhì)上的程序產(chǎn)品,用于獲得應(yīng)用數(shù)據(jù),當(dāng)執(zhí)行該程序產(chǎn)品時,其包括用于使用數(shù)據(jù)頁面接收應(yīng)用數(shù)據(jù)的程序代碼;用于確保與網(wǎng)絡(luò)應(yīng)用的會話有效的程序代碼;以及用于當(dāng)會話有效時將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用的程序代碼。
19.如權(quán)利要求18所述的程序產(chǎn)品,還包括用于接收應(yīng)用數(shù)據(jù)的提交請求的程序代碼。
20.如權(quán)利要求18所述的程序產(chǎn)品,其中用于確保的程序代碼包括用于確定數(shù)據(jù)頁面的顯示時間的程序代碼;用于確定在顯示時間這一時刻的剩余會話時間的程序代碼;用于確定提交請求的提交時間的程序代碼;以及用于將剩余會話時間與提交時間和第一時間之差進(jìn)行比較的程序代碼。
21.如權(quán)利要求20所述的程序產(chǎn)品,其中用于確保的程序代碼還包括用于如果剩余會話時間可能已期滿,則將請求發(fā)送到網(wǎng)絡(luò)應(yīng)用的程序代碼;以及用于確定是否響應(yīng)于該請求從網(wǎng)絡(luò)應(yīng)用接收登錄頁面的程序代碼。
22.如權(quán)利要求21所述的程序產(chǎn)品,其中用于確保的程序代碼還包括用于在新窗口中顯示登錄頁面的程序代碼。
全文摘要
一種用于為網(wǎng)絡(luò)應(yīng)用獲得應(yīng)用數(shù)據(jù)的改進(jìn)式解決方案。在與網(wǎng)絡(luò)應(yīng)用的會話期間,使用向用戶顯示的數(shù)據(jù)頁面接收應(yīng)用數(shù)據(jù)。在將應(yīng)用數(shù)據(jù)提交給網(wǎng)絡(luò)應(yīng)用之前,首先確保會話有效。具體地說,如果會話保持有效,則提交應(yīng)用數(shù)據(jù)。但是,如果會話不再有效,則在提交應(yīng)用數(shù)據(jù)之前建立新會話。
文檔編號H04L12/00GK1620011SQ20041006867
公開日2005年5月25日 申請日期2004年9月3日 優(yōu)先權(quán)日2003年11月19日
發(fā)明者拉馬杰揚·高帕爾拉杰 申請人:國際商業(yè)機(jī)器公司