專利名稱:為離線客戶請(qǐng)求提供響應(yīng)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明大致涉及在計(jì)算機(jī)網(wǎng)絡(luò)中為客戶的請(qǐng)求進(jìn)行響應(yīng)的方法及裝置,并且更具體地涉及為處于離線狀態(tài)的客戶發(fā)送的請(qǐng)求進(jìn)行響應(yīng)的方法及裝置。
二十世紀(jì)九十年代是以數(shù)據(jù)處理產(chǎn)業(yè)與消費(fèi)電子產(chǎn)業(yè)相結(jié)合而受到推動(dòng)的社會(huì)技術(shù)革命為標(biāo)志的。如同所有的革命那樣,這對(duì)技術(shù)浪潮起到了可觀的推波助瀾的效果。其效果是轉(zhuǎn)而推動(dòng)了已知的但是在若干年中相對(duì)默默無(wú)聞的技術(shù)的發(fā)展。這些技術(shù)的一個(gè)主要領(lǐng)域是與因特網(wǎng)相關(guān)的文檔、媒體和程序的傳播。電子娛樂(lè)和消費(fèi)業(yè)與數(shù)據(jù)處理的結(jié)合極大地加速了對(duì)廣泛分布的通信傳播途徑的需求。因特網(wǎng),作為一個(gè)用于傳播科學(xué)和政府?dāng)?shù)據(jù)的松散的計(jì)算機(jī)網(wǎng)絡(luò),在平靜地存在了十幾年之后,得到了廣泛的發(fā)展,開始了驚人的擴(kuò)展時(shí)期。隨著這種擴(kuò)展,商家和消費(fèi)者可以直接訪問(wèn)所有的文檔、媒體和計(jì)算機(jī)程序等。
因特網(wǎng)是全球最大的、開放的、由眾多網(wǎng)絡(luò)相互連接而成的計(jì)算機(jī)網(wǎng)絡(luò)。它是由美國(guó)阿帕網(wǎng)(ARPAnet)發(fā)展而成的。主要采用TCP/IP協(xié)議。TCP/IP是“傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議”的首字母縮略語(yǔ),是美國(guó)國(guó)防部開發(fā)的用于計(jì)算機(jī)之間通信的軟件協(xié)議??梢詫⒁蛱鼐W(wǎng)描述為由執(zhí)行允許用戶交互共享網(wǎng)絡(luò)信息的聯(lián)網(wǎng)協(xié)議的計(jì)算機(jī)互連而成的地理上分布的遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)。因?yàn)檫@種廣泛使用的信息共享,諸如因特網(wǎng)這種遠(yuǎn)程網(wǎng)絡(luò)已經(jīng)非常全面地發(fā)展為“開放”系統(tǒng)。對(duì)于該系統(tǒng),開發(fā)者能夠基本上沒(méi)有限制地設(shè)計(jì)軟件應(yīng)用程序以便執(zhí)行特定的操作或者服務(wù)。對(duì)于有關(guān)因特網(wǎng)的節(jié)點(diǎn)、對(duì)象和鏈接的細(xì)節(jié),可參見教科書《通曉因特網(wǎng)-Mastering the Internet》,作者為G.H.Cady等人,該書于1996年由美國(guó)加利弗尼亞州Alameda市的Sybex公司出版。
萬(wàn)維網(wǎng)(WWW)是因特網(wǎng)的多媒體信息檢索系統(tǒng)。在Web環(huán)境中,客戶機(jī)利用超文本傳輸協(xié)議(HTTP)實(shí)現(xiàn)對(duì)Web服務(wù)器的事務(wù)處理,其中HTTP是眾所周知的應(yīng)用程序協(xié)議,該協(xié)議允許用戶利用稱為超文本標(biāo)記語(yǔ)言(HTML)的標(biāo)準(zhǔn)頁(yè)面描述語(yǔ)言訪問(wèn)各種文件(如文本、圖形、圖象、聲音、視頻等文件)。HTML提供基礎(chǔ)文件格式,并且允許開發(fā)者規(guī)定與其他服務(wù)器及文件的鏈接。
采用超文本協(xié)議的萬(wàn)維網(wǎng)遵循客戶/服務(wù)器結(jié)構(gòu)。萬(wàn)維網(wǎng)服務(wù)的客戶端采用瀏覽器程序,可向萬(wàn)維網(wǎng)服務(wù)器發(fā)送各種請(qǐng)求,并對(duì)服務(wù)器返回的由HTML語(yǔ)言定義的超文本信息和各種多媒體數(shù)據(jù)格式進(jìn)行解釋、顯示和播放。
在客戶/服務(wù)器體系網(wǎng)絡(luò)的實(shí)際應(yīng)用中,往往不能保證客戶端軟件始終處于在線狀態(tài)工作,尤其是對(duì)于移動(dòng)裝置中運(yùn)行的客戶端軟件更是如此。目前被廣泛采用的移動(dòng)裝置例如包括IBM公司的ThinkPad這樣的筆記本計(jì)算機(jī),3COM公司的PalmPilot或者IBM公司的WorkPad這樣的掌上計(jì)算機(jī),或者其他多種多樣的內(nèi)置有網(wǎng)絡(luò)連接功能的手持裝置。由于移動(dòng)裝置的移動(dòng)性,造成在多數(shù)情況下不便于接入網(wǎng)絡(luò)。
因此在不能取得網(wǎng)絡(luò)連接的情況下,為了既發(fā)揮移動(dòng)裝置的方便特性又充分利用因特網(wǎng)的巨大優(yōu)點(diǎn),不得不要求客戶端軟件能夠在離線狀態(tài)下進(jìn)行工作。
目前的客戶端軟件只有在特別設(shè)計(jì)之后才能夠在離線狀態(tài)下工作,否則不能正常工作?,F(xiàn)有技術(shù)中,為了使客戶端應(yīng)用程序能夠在離線狀態(tài)下工作,已經(jīng)開發(fā)了許多專用方法。但是這些方法都是針對(duì)于特定應(yīng)用程序或者是針對(duì)于特定硬件的。所以需要一種簡(jiǎn)便通用的方法使得客戶在離線狀態(tài)下亦能正常工作。
在線狀態(tài)與離線狀態(tài)的重要區(qū)別在于,在線狀態(tài)下,客戶在必要時(shí)可以取得服務(wù)器的響應(yīng),而在離線狀態(tài)下,則不能取得服務(wù)器的響應(yīng)。所以在客戶/服務(wù)器體系中,一般的客戶端軟件在離線狀態(tài)下不能正常工作。
因此,本發(fā)明的第一個(gè)目的在于提供一種為離線客戶的請(qǐng)示提供響應(yīng)的裝置。
本發(fā)明的第二個(gè)目的在于提供一種為離線客戶的請(qǐng)求提供響應(yīng)的方法。
本發(fā)明的第三個(gè)目的在于提供一種記錄有為離線客戶的請(qǐng)求提供響應(yīng)的程序的計(jì)算機(jī)可讀的程序記錄媒體。
為實(shí)現(xiàn)上述第一個(gè)目的,本發(fā)明提供一種為離線客戶的請(qǐng)求提供響應(yīng)的裝置,其特征在于包括一個(gè)請(qǐng)求-響應(yīng)存儲(chǔ)器(703),設(shè)置在客戶機(jī)中,在其中存儲(chǔ)了多個(gè)請(qǐng)求和多個(gè)響應(yīng);一個(gè)網(wǎng)絡(luò)流重定向器(701),用于在客戶處于離線狀態(tài)時(shí),通過(guò)修改客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從網(wǎng)絡(luò)連接重定向到客戶機(jī)本身,以及用于在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí),通過(guò)恢復(fù)客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從客戶機(jī)本身重定向到網(wǎng)絡(luò)連接;以及一個(gè)離線服務(wù)器(702),設(shè)置在客戶機(jī)中,用于接收由所述網(wǎng)絡(luò)流重定向器(701)重定向到客戶機(jī)本身的客戶請(qǐng)求、根據(jù)收到的請(qǐng)求以及所述請(qǐng)求-響應(yīng)存儲(chǔ)器(703)中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)并將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
為實(shí)現(xiàn)上述第二個(gè)目的,本發(fā)明提供一種為離線客戶的請(qǐng)求提供響應(yīng)的方法,其特征在于包括以下步驟(a)在客戶機(jī)中設(shè)置一個(gè)請(qǐng)求-響應(yīng)存儲(chǔ)器,在其中存儲(chǔ)了多個(gè)請(qǐng)求和多個(gè)響應(yīng);(b)在客戶進(jìn)入離線狀態(tài)時(shí),通過(guò)修改客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從網(wǎng)絡(luò)連接重定向到客戶機(jī)本身;以及(c)在客戶處于離線狀態(tài)時(shí),在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(c1)接收被重定向到客戶機(jī)本身的請(qǐng)求,(c2)根據(jù)所述請(qǐng)求以及所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng),以及(c3)將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
為實(shí)現(xiàn)上述第三個(gè)目的,本發(fā)明提供一種計(jì)算機(jī)可讀的程序記錄媒體,該媒體上記錄了用于執(zhí)行以下步驟的程序在判斷出客戶進(jìn)入離線狀態(tài)時(shí),修改客戶機(jī)的系統(tǒng)設(shè)置,使得客戶請(qǐng)求由網(wǎng)絡(luò)連接重定向到客戶機(jī)本身;以及在客戶處于離線狀態(tài)時(shí),在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(c1)接收被重定向到客戶機(jī)本身的請(qǐng)求,(c2)根據(jù)所述請(qǐng)求以及位于客戶機(jī)中的請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng),以及(c3)將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
根據(jù)本發(fā)明的方法和裝置,不必修改客戶軟件,只需對(duì)客戶機(jī)的系統(tǒng)設(shè)置稍做修改,即可使客戶在離線狀態(tài)下亦能正常工作,增加了客戶機(jī)的移動(dòng)性。服務(wù)器端和客戶端再不必為離線狀態(tài)而困撓。特別是對(duì)于個(gè)人數(shù)字助理(PDA)版本的客戶軟件,由于不必對(duì)原本就已經(jīng)十分復(fù)雜的PDA客戶軟件進(jìn)行任何修改,就可使其離線工作,所以極大地提高了PDA裝置的移動(dòng)性。另外,由于客戶軟件未做任何改動(dòng),所以無(wú)論在在線狀態(tài)還是在離線狀態(tài),用戶所使用的操作界面都是相同的,從而不必對(duì)用戶進(jìn)行另外的培訓(xùn)。
通過(guò)結(jié)合附圖對(duì)本發(fā)明較佳實(shí)施方式的詳細(xì)描述,本發(fā)明的上述特征和優(yōu)點(diǎn)將會(huì)更加明顯。其中
圖1示出能夠在其中實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng);圖2示出可以包括在圖1的數(shù)據(jù)處理系統(tǒng)20中的各部件的高層框圖;圖3示出能夠?qū)崿F(xiàn)本發(fā)明的掌上數(shù)據(jù)處理系統(tǒng);圖4示出根據(jù)本發(fā)明最佳實(shí)施方式的客戶/服務(wù)器體系;圖5以更詳細(xì)的框圖示出了根據(jù)本發(fā)明最佳實(shí)施方式的客戶/服務(wù)器體系;圖6示出可根據(jù)本發(fā)明的最佳實(shí)施方式實(shí)現(xiàn)的計(jì)算機(jī)網(wǎng)絡(luò);圖7示出根據(jù)本發(fā)明為離線客戶請(qǐng)求提供響應(yīng)的裝置的詳細(xì)框圖;圖8示出在客戶處于離線狀態(tài)工作時(shí)本發(fā)明的方法的基本流程圖;圖9示出在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí)本發(fā)明的方法的流程圖;圖10舉例示出一個(gè)保險(xiǎn)公司的內(nèi)聯(lián)網(wǎng)頁(yè)的相互關(guān)系;圖11示出瀏覽器在離線狀態(tài)下工作時(shí)可得到適當(dāng)響應(yīng)的舉例。
在以下描述中,將給出多個(gè)特定細(xì)節(jié)。然而,對(duì)于本領(lǐng)域內(nèi)普通技術(shù)人員而言,顯然可以不利用這樣的特定細(xì)節(jié)來(lái)實(shí)現(xiàn)本發(fā)明。在其他情況下,公知的部件或者電路只用框圖形式給出,以便不使本發(fā)明埋沒(méi)于不必要的細(xì)節(jié)之中。在多數(shù)情況下,與時(shí)序考慮等有關(guān)的細(xì)節(jié)都被省去,只要這樣的細(xì)節(jié)對(duì)于完全理解本發(fā)明是不必要的,并且屬于相關(guān)技術(shù)領(lǐng)域普通技術(shù)人員的常識(shí)。
現(xiàn)在參照?qǐng)D1,示出能夠在其中實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)處理系統(tǒng)20包括處理器22、鍵盤82和顯示器96。鍵盤82由電纜連接到處理器22。顯示器96包括顯示屏幕30,可以采用陰極射線管(CRT)、液晶顯示器(LCD)、電極照明板等實(shí)現(xiàn)。數(shù)據(jù)處理系統(tǒng)20還包括指點(diǎn)裝置84,它可以采用跟蹤球、游戲桿、觸感板或屏或如圖所示的鼠標(biāo)實(shí)現(xiàn)。指點(diǎn)裝置84可被用來(lái)移動(dòng)顯示屏幕30上的箭頭或光標(biāo)。處理器22還可以連接到一個(gè)或多個(gè)外圍設(shè)備,比如調(diào)制解調(diào)器92、CD-ROM78、網(wǎng)絡(luò)適配器90和軟盤驅(qū)動(dòng)器40,每個(gè)外圍設(shè)備相對(duì)于處理器22的外殼可以是內(nèi)置或外置的。可將象打印機(jī)100這樣的輸出設(shè)備連接到處理器22。
本領(lǐng)域內(nèi)的普通技術(shù)人員應(yīng)該認(rèn)識(shí)到,顯示器96、鍵盤82和指點(diǎn)裝置84每個(gè)都可以利用幾個(gè)公知的現(xiàn)有部件實(shí)現(xiàn)。
現(xiàn)在參照?qǐng)D2,所示的高層框圖示出根據(jù)本發(fā)明的教導(dǎo)可以包括在圖1的數(shù)據(jù)處理系統(tǒng)20中的部件。該數(shù)據(jù)處理系統(tǒng)20主要由計(jì)算機(jī)可讀的指令控制,計(jì)算機(jī)可讀的指令可以采用軟件的形式,而不管在哪里或利用什么手段存儲(chǔ)或訪問(wèn)這種軟件。這種軟件可以在中央處理部件(CPU)50中執(zhí)行,使得數(shù)據(jù)處理系統(tǒng)20工作。
與系統(tǒng)總線5連接的存儲(chǔ)裝置包括隨機(jī)存取存儲(chǔ)器(RAM)56,只讀存儲(chǔ)器(ROM)58,和非易失性存儲(chǔ)器60。這種存儲(chǔ)器包括允許存儲(chǔ)和獲取信息的電路。ROM含有不能夠修改的存儲(chǔ)數(shù)據(jù)。存儲(chǔ)在RAM中的數(shù)據(jù)可以由CPU 50或其他硬件設(shè)備改變。非易失性存儲(chǔ)器60是當(dāng)?shù)綦姇r(shí)不失去數(shù)據(jù)的存儲(chǔ)器。非易失性存儲(chǔ)器包括ROM、EPROM、快閃存儲(chǔ)器或電池后備的CMOS RAM。如圖2所示,這種電池后備CMOS RAM可以用來(lái)存儲(chǔ)系統(tǒng)配置信息。
擴(kuò)展卡或板是包括芯片或其他電子部件的電路板,被連接起來(lái)向計(jì)算機(jī)增加功能或資源。一般地,可用擴(kuò)展卡增加存儲(chǔ)器、磁盤驅(qū)動(dòng)控制器66、視頻支持、并行和串行口以及內(nèi)置調(diào)制解調(diào)器。對(duì)于膝上計(jì)算機(jī)、掌上計(jì)算機(jī)或者其他便攜計(jì)算機(jī),擴(kuò)展卡一般采取PC卡的形式,它們是信用卡大小的裝置,被設(shè)計(jì)為插入到計(jì)算機(jī)側(cè)面或背面的槽中。這種槽的一個(gè)例子是PCMCIA槽(個(gè)人計(jì)算機(jī)存儲(chǔ)卡國(guó)際協(xié)會(huì)),定義了第1、2和3型卡槽。這樣,可以采用空槽68接收各種類型的擴(kuò)展卡或PCMCIA卡。
磁盤控制器66和軟盤控制器70兩者都包括專用集成電路和相關(guān)的電路,它們分別指導(dǎo)和控制從和向硬盤驅(qū)動(dòng)器72以及軟盤74讀或?qū)憯?shù)據(jù)。這種磁盤控制器處理這樣的任務(wù),比如定位讀/寫頭、在驅(qū)動(dòng)器和CPU50之間仲裁、以及控制向和從存儲(chǔ)器傳送信息。單個(gè)磁盤控制器能夠控制一個(gè)以上的磁盤驅(qū)動(dòng)器。
CD-ROM控制器76可以包括在數(shù)據(jù)處理系統(tǒng)20中,用于從CD-ROM(小型光盤只讀存儲(chǔ)器)78讀數(shù)據(jù)。這種CD-ROM采用激光光學(xué)器件而不是磁裝置來(lái)讀數(shù)據(jù)。
鍵盤鼠標(biāo)控制器80設(shè)置在數(shù)據(jù)處理系統(tǒng)20中,用于與鍵盤82和指點(diǎn)裝置84進(jìn)行接口。這種指點(diǎn)裝置一般用于控制一個(gè)屏上元件,比如一個(gè)光標(biāo),可以采用箭頭的形狀,它有一個(gè)熱點(diǎn),在用戶按鼠標(biāo)按鍵時(shí)指定指點(diǎn)器的位置。其他的指點(diǎn)裝置包括圖形輸入板、指示筆、光筆、激戲桿、跟蹤球、軌跡板和由IBM公司以“TrackPoint”商標(biāo)出售的指點(diǎn)裝置。
數(shù)據(jù)處理系統(tǒng)20與其他數(shù)據(jù)處理系統(tǒng)之間的通信可以由都與系統(tǒng)總線5連接的串口控制器88和網(wǎng)絡(luò)適配器90簡(jiǎn)化。串口控制器88用于在計(jì)算機(jī)之間、計(jì)算機(jī)與外圍設(shè)備之間傳送信息,在單條線路上一次一位地傳輸。串行通信可以是同步的(由某些標(biāo)準(zhǔn)比如時(shí)鐘控制)或是異步的(通過(guò)交換對(duì)信息流進(jìn)行控制的控制信號(hào)來(lái)管理)。串行通信標(biāo)準(zhǔn)的例子包括RS-232接口和RS-422接口。如圖所示,這種串行接口可以用于與調(diào)制解調(diào)器92通信。調(diào)制解調(diào)器是一種使得計(jì)算機(jī)能夠在標(biāo)準(zhǔn)電話線上傳送信息的通信裝置。調(diào)制解調(diào)器92將數(shù)字計(jì)算機(jī)信號(hào)轉(zhuǎn)換為適于在電話線上傳輸?shù)膬?nèi)部時(shí)鐘信號(hào)。調(diào)制解調(diào)器92可以用來(lái)將數(shù)據(jù)處理系統(tǒng)20連接到一個(gè)在線信息服務(wù)機(jī)構(gòu),比如由IBM和Sears以服務(wù)商標(biāo)“PRODIGY”提供的信息服務(wù)機(jī)構(gòu)。這種在線服務(wù)提供商可以提供經(jīng)調(diào)制解調(diào)器92下載到數(shù)據(jù)處理系統(tǒng)20的軟件。調(diào)制解調(diào)器92可以提供與比如服務(wù)器、電子公告板、因特網(wǎng)或萬(wàn)維網(wǎng)這樣的軟件資源的連接。
網(wǎng)絡(luò)適配器90可以用來(lái)將數(shù)據(jù)處理系統(tǒng)20連接到局域網(wǎng)94。網(wǎng)絡(luò)94可以向計(jì)算機(jī)用戶提供以電子方式通信和傳送軟件和信息的裝置。另外,網(wǎng)絡(luò)94可以提供分布式處理,在執(zhí)行一個(gè)任務(wù)時(shí)它采用幾臺(tái)計(jì)算機(jī)共享負(fù)載或協(xié)作。
由顯示控制器98所控制的顯示器96用于顯示數(shù)據(jù)處理系統(tǒng)20所產(chǎn)生的視頻輸出。這種視頻輸出可以包括文本、圖形、動(dòng)畫和影象。顯示器96可以利用基于CRT的視頻顯示器、基于LCD的平板顯示器或者基于氣體等離子體的平板顯示器實(shí)現(xiàn)。顯示控制器98是用于產(chǎn)生發(fā)送至顯示器96的視頻信號(hào)的電子部件。
打印機(jī)100可以經(jīng)過(guò)并口控制器102連接到數(shù)據(jù)處理系統(tǒng)20。打印機(jī)100用于將文本或計(jì)算機(jī)產(chǎn)生的圖象放置到紙張或者另一介質(zhì)上,比如透明膠片。其他類型的打印機(jī)可以包括圖象設(shè)置器、繪圖儀或者膠片記錄器等。
并口控制器102用來(lái)在系統(tǒng)總線5與另一并行通信裝置(比如打印機(jī)100)之間連接的線路上同時(shí)發(fā)送多種數(shù)據(jù)和控制位。
CPU50讀取、解碼和執(zhí)行指令,并且經(jīng)過(guò)計(jì)算機(jī)主數(shù)據(jù)傳送通路(即系統(tǒng)總線5)向和從其他資源傳送信息。這種總線連接數(shù)據(jù)處理系統(tǒng)20中的各個(gè)部件,并且限定數(shù)據(jù)交換的媒體。系統(tǒng)總線5將存儲(chǔ)部件56、58、60和CPU 50以及其他設(shè)備連接在一起,如圖2所示,并且允許在它們之間交換數(shù)據(jù)。
現(xiàn)在參照?qǐng)D3,示出能夠?qū)崿F(xiàn)本發(fā)明的掌上數(shù)據(jù)處理系統(tǒng)300。掌上數(shù)據(jù)處理系統(tǒng)300的前面板上具有顯示屏幕301、手寫區(qū)域302、滾動(dòng)按鈕303,應(yīng)用程序按鈕304。顯示屏幕1用于顯示掌上數(shù)據(jù)處理系統(tǒng)300中所存儲(chǔ)的信息,并且是觸感式的,能夠感應(yīng)用戶用筆在屏幕上的點(diǎn)擊。顯示屏幕301也能夠顯示用戶在使用應(yīng)用程序時(shí)的控制和設(shè)定信息。手寫區(qū)域302是用戶用筆書寫文本的區(qū)域。滾動(dòng)按鈕30用于觀看超出顯示屏幕301之外的文本或其他信息,包括下滾按鈕和上滾按鈕。應(yīng)用程序按鈕304用于激活各個(gè)應(yīng)用程序,每個(gè)按鈕具有一個(gè)特定的圖標(biāo),與其應(yīng)用程序相對(duì)應(yīng)。掌上數(shù)據(jù)處理系統(tǒng)300例如可以是可從IBM公司購(gòu)得的WorkPad,可從3COM公司購(gòu)得的PalmPilot等。在IBM WorkPad的前面板上具有四個(gè)應(yīng)用程序按鈕,分別對(duì)應(yīng)于記事本、通訊錄、任務(wù)表和備忘錄。可以重新指定應(yīng)用程序按鈕304,來(lái)激活WorkPad中所存儲(chǔ)的任何應(yīng)用程序。另外可為掌上數(shù)據(jù)處理系統(tǒng)300隨機(jī)提供一支專用的筆(未示出),用于點(diǎn)擊顯示屏幕301或者在手寫區(qū)域302上書寫。
掌上數(shù)據(jù)處理系統(tǒng)300的高層框圖與圖2所示類似,所不同的是省略了圖2中所示的某些部件,以滿足掌上數(shù)據(jù)處理系統(tǒng)的小巧和輕便的特性。在掌上數(shù)據(jù)處理系統(tǒng)300中不具有象磁盤這樣的大容量外存設(shè)備,而一般只設(shè)置一個(gè)存儲(chǔ)器模塊作為內(nèi)存。目前的掌上數(shù)據(jù)處理系統(tǒng)300的總內(nèi)存空間一般小于1M。雖然可以使用PCMCIA卡對(duì)內(nèi)存進(jìn)行擴(kuò)充,但是擴(kuò)充后的容量一般也只有幾兆。在IBM WorkPad中,存儲(chǔ)空間分為ROM和RAM,位于同一個(gè)存儲(chǔ)器模塊中。ROM容量為0.5至1.5MB,RAM最小容量為1M。在ROM中預(yù)先置入PalmOS的主要應(yīng)用程序組。其他的或者替換的應(yīng)用程序和系統(tǒng)擴(kuò)充可以裝載到RAM中,但是受RAM存儲(chǔ)容量的限制,這并非始終是實(shí)際可行的??梢酝ㄟ^(guò)更換ROM對(duì)軟件進(jìn)行升級(jí)或提高。也可以通過(guò)安裝單個(gè)存儲(chǔ)器模塊來(lái)完全更換整個(gè)系統(tǒng)軟件和應(yīng)用程序組。另外,在掌上數(shù)據(jù)處理系統(tǒng)300中,一般內(nèi)置了較強(qiáng)的網(wǎng)絡(luò)通信能力,可以與因特網(wǎng)或萬(wàn)維網(wǎng)取得連接。
現(xiàn)在參照?qǐng)D4,圖中示出根據(jù)本發(fā)明最佳實(shí)施方式的客戶/服務(wù)器體系。圖4中,客戶請(qǐng)求(比如對(duì)新聞的請(qǐng)求)91由客戶92發(fā)送到服務(wù)器88。服務(wù)器88可以是在因特網(wǎng)或者其他通信網(wǎng)絡(luò)上能夠訪問(wèn)的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)??蛻?2可以在圖1所示的計(jì)算機(jī)20或者圖3所示的掌上計(jì)算機(jī)300中運(yùn)行。
服務(wù)器88根據(jù)客戶請(qǐng)求,掃描和搜索原始(比如未壓縮的)信息(比如在線新聞或新聞組),將過(guò)濾的電子信息作為服務(wù)器響應(yīng)93提供給客戶92。
客戶92可以在第一計(jì)算機(jī)中活動(dòng),服務(wù)器過(guò)程可以在第二計(jì)算機(jī)系統(tǒng)中活動(dòng),經(jīng)過(guò)通信媒體相互通信,從而提供分布式功能并允許多個(gè)客戶利用服務(wù)器的信息收集能力。
在萬(wàn)維網(wǎng)的環(huán)境下,客戶機(jī)內(nèi)運(yùn)行的瀏覽器進(jìn)程建立與服務(wù)器的連接并且向用戶提供信息。服務(wù)器內(nèi)運(yùn)行相應(yīng)的服務(wù)器軟件,該軟件把信息以HTTP響應(yīng)的形式提供給客戶機(jī)。HTTP響應(yīng)對(duì)應(yīng)于由HTML語(yǔ)言構(gòu)成的Web頁(yè),或者其他服務(wù)器產(chǎn)生的數(shù)據(jù)。
在客戶機(jī)中運(yùn)行與HTML兼容的瀏覽器時(shí),利用URL來(lái)定義鏈接。客戶機(jī)請(qǐng)求由鏈接所標(biāo)識(shí)的服務(wù)器,并且從服務(wù)器接收HTML格式的文件。
本發(fā)明中可以采用任何數(shù)目的市場(chǎng)上可獲得的瀏覽器。例如,可以是網(wǎng)景公司的Navigator、Communicator、微軟公司的IE,從伊利諾伊州Urbana-Champaign市的國(guó)家超計(jì)算應(yīng)用中心(NCSA)獲得的Mosaic牌瀏覽器,或是Lynx牌瀏覽器。任何其他的可提供HTTP所規(guī)定的功能的瀏覽器都可以使用。
因特網(wǎng)服務(wù)一般通過(guò)指定唯一的網(wǎng)址(即統(tǒng)一資源定位符-URL)受到訪問(wèn),該統(tǒng)一資源定位符(URL)表示到達(dá)服務(wù)器的網(wǎng)絡(luò)路徑,其中URL具有定義網(wǎng)絡(luò)連接的特定句法。統(tǒng)一資源定位符分為兩個(gè)基本部分,即所使用的協(xié)議和對(duì)象路徑名。例如,統(tǒng)一資源定位符地址“http//www.uspto.gov”(美國(guó)專利商標(biāo)局的主頁(yè)),規(guī)定了超文本傳輸協(xié)議“http”和域名“www.uspto.gov”。域名與唯一的數(shù)字值(TCP/IP地址)相關(guān)聯(lián)。
現(xiàn)在參照?qǐng)D5,以更詳細(xì)的框圖示出了根據(jù)本發(fā)明最佳實(shí)施方式的客戶/服務(wù)器體系??蛻?2利用網(wǎng)絡(luò)連接814與服務(wù)器88連接。為了直觀起見,網(wǎng)絡(luò)連接814為因特網(wǎng)、內(nèi)聯(lián)網(wǎng)或者其他公知的互連。就因特網(wǎng)而言,服務(wù)器88為客戶92可以訪問(wèn)的眾多服務(wù)器之一,其中標(biāo)號(hào)92表示一個(gè)客戶,它是運(yùn)行在某臺(tái)客戶機(jī)上的進(jìn)程,比如可以是Web瀏覽器、郵件閱讀器、FTP(文件傳輸協(xié)議)客戶端軟件、Telnet(遠(yuǎn)程登錄)客戶端軟件等等。
客戶機(jī)可以是臺(tái)式機(jī)、筆記本計(jì)算機(jī)、手持或者掌上計(jì)算機(jī)等。例如,客戶機(jī)可以是在OS/2操作系統(tǒng)下運(yùn)行的IBM或IBM兼容機(jī)、IBMThinkPad筆記本計(jì)算機(jī),運(yùn)行Windows3.1或更高版本的操作系統(tǒng)的其他x86或基于奔騰系列芯片的計(jì)算機(jī),也可以是運(yùn)行PalmOS操作系統(tǒng)的IBM WorkPad掌上計(jì)算機(jī),或者是運(yùn)行Windows CE操作系統(tǒng)的其他掌上型計(jì)算機(jī),也可以是具有網(wǎng)絡(luò)通信能力的個(gè)人數(shù)字助理(PDA)。
典型的服務(wù)器包括一臺(tái)IBM RISC/6000計(jì)算機(jī)(基于所謂的RISC工作站的精簡(jiǎn)指令集),運(yùn)行AIX(先進(jìn)交互式執(zhí)行程序版本4.1或更高)操作系統(tǒng)和服務(wù)器程序。通常利用撥號(hào)計(jì)算機(jī)網(wǎng)絡(luò),服務(wù)器從客戶機(jī)接收請(qǐng)求,以便獲得客戶所請(qǐng)求的文件或?qū)ο螅蛘邎?zhí)行所請(qǐng)求的任務(wù)。在IBM公司的許多出版物中說(shuō)明了基于RISC的計(jì)算機(jī)的各種型號(hào),如《RS/6000、7013和7016 POWERstation和POWERserver硬件技術(shù)參考手冊(cè)》(定購(gòu)號(hào)SA23-2644-00)。在IBM公司1985年11月出版《AIX操作系統(tǒng)技術(shù)參考手冊(cè)》第一版以及其他出版物中說(shuō)明了AIX操作系統(tǒng)。盡管以上所述是實(shí)際可用的,但是也可以采用任何其他適宜的硬件/操作系統(tǒng)/服務(wù)器組合。
現(xiàn)在參照?qǐng)D6,圖中示出計(jì)算機(jī)網(wǎng)絡(luò)80,它可根據(jù)本發(fā)明的最佳實(shí)施方式實(shí)現(xiàn)。計(jì)算機(jī)網(wǎng)絡(luò)80代表因特網(wǎng),可以描述為根據(jù)這里所述的客戶/服務(wù)器體系的公知計(jì)算機(jī)網(wǎng)絡(luò)。當(dāng)然,本領(lǐng)域內(nèi)熟練的技術(shù)人員應(yīng)認(rèn)識(shí)到因特網(wǎng)不僅僅是根據(jù)本發(fā)明最佳實(shí)施方式采用的分布式計(jì)算機(jī)網(wǎng)絡(luò)。也可以采用其他分布式計(jì)算機(jī)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)計(jì)算機(jī)網(wǎng)絡(luò)80,比如本領(lǐng)域內(nèi)公知的所謂“內(nèi)聯(lián)網(wǎng)”。
理論上,因特網(wǎng)是包括服務(wù)器88的一個(gè)大網(wǎng)絡(luò),這些服務(wù)器可由客戶機(jī),一般是個(gè)人計(jì)算機(jī)的用戶,通過(guò)某些專用因特網(wǎng)接入提供商84(比如Internet America)或者在線服務(wù)提供商(比如America On-Line、Prodigy、Compuserve等等)來(lái)訪問(wèn)。每個(gè)客戶機(jī)上可以運(yùn)行瀏覽器(一個(gè)客戶)以經(jīng)過(guò)接入提供商訪問(wèn)服務(wù)器88。每個(gè)服務(wù)器88操作所謂的“Web站點(diǎn)”。
由于本發(fā)明涉及及網(wǎng)絡(luò)傳輸,故對(duì)網(wǎng)絡(luò)及其操作原理的理解會(huì)是有幫助的。在這里并不過(guò)分深入地描述本發(fā)適用的網(wǎng)絡(luò)的細(xì)節(jié)。例如,本發(fā)明可用于象因特網(wǎng)這樣的全球性網(wǎng)絡(luò)。
現(xiàn)在參照?qǐng)D7,圖中示出根據(jù)本發(fā)明的為離線客戶請(qǐng)求提供響應(yīng)的裝置的詳細(xì)框圖。圖7中的客戶92和服務(wù)器88與圖4和圖5中所示相同,網(wǎng)絡(luò)連接814與圖5中所示相同,這里不再重復(fù)。
圖7中最基本的部件是網(wǎng)絡(luò)流重定向器701、離線服務(wù)器702和請(qǐng)求-響應(yīng)存儲(chǔ)器703。由它們?nèi)呒纯蓸?gòu)成本發(fā)明最基本的裝置。網(wǎng)絡(luò)流重定向器701能起到以下作用。當(dāng)客戶92處于在線狀態(tài)工作時(shí),比如用戶正在利用瀏覽器瀏覽服務(wù)器88上的網(wǎng)頁(yè)時(shí),網(wǎng)絡(luò)流重定向器701對(duì)客戶92與服務(wù)器88之間的數(shù)據(jù)傳輸不做任何改變。也就是說(shuō),客戶92發(fā)往服務(wù)器88的請(qǐng)求仍然通過(guò)網(wǎng)絡(luò)連接814傳送到服務(wù)器88,而服務(wù)器88收到客戶請(qǐng)求后,完成客戶所請(qǐng)求的任務(wù)后將適當(dāng)?shù)捻憫?yīng)通過(guò)網(wǎng)絡(luò)連接814返回給客戶92。當(dāng)客戶92處于離線狀態(tài)工作時(shí),即不存在或不能取得網(wǎng)絡(luò)連接814的情況下,網(wǎng)絡(luò)流重定向器701將把客戶92的請(qǐng)求重定向到位于客戶機(jī)本地的離線服務(wù)器702,然后離線服務(wù)器702對(duì)此請(qǐng)求作出適當(dāng)?shù)捻憫?yīng)(將在后文描述)。
網(wǎng)絡(luò)流重定向器701的上述功能,可以通過(guò)修改客戶機(jī)的系統(tǒng)設(shè)置來(lái)實(shí)現(xiàn)。如在前文所述,統(tǒng)一資源定位符URL地址中規(guī)定了網(wǎng)絡(luò)傳輸協(xié)議和域名。例如,URL“http//www.ibm.com”指明域名為“www.ibm.com”。域名與唯一的IP地址相關(guān)聯(lián)。因特網(wǎng)中的所有數(shù)據(jù)傳輸都是根據(jù)IP地址進(jìn)行的。因此,客戶指定一個(gè)域名后,要由網(wǎng)絡(luò)機(jī)制轉(zhuǎn)換為相應(yīng)的IP地址。目前的因特網(wǎng)中,這一轉(zhuǎn)換過(guò)程是由域名服務(wù)器進(jìn)行的。因此,網(wǎng)絡(luò)流重定向器701所做的工作只是將客戶所請(qǐng)求的域名轉(zhuǎn)換為客戶機(jī)本身的IP地址,或?qū)⑵浠謴?fù)為原來(lái)的IP地址。
而這種IP地址轉(zhuǎn)換過(guò)程又可由以下簡(jiǎn)單的文件操作來(lái)完成。根據(jù)TCP/IP協(xié)議,操作系統(tǒng)得到URL中所含的域名后,首先在本地的文件系統(tǒng)中搜尋“HOSTS”文件。例如,在Windows NT操作系統(tǒng)中,“HOSTS”文件存儲(chǔ)在“\NT\system32\drivers\etc\”目錄中,在UNIX操作系統(tǒng)中,該文件存儲(chǔ)在“\etc\”目錄中,在Windows 95操作系統(tǒng)中,該文件存儲(chǔ)在“\Windows\”目錄中。在該文件中可以含有域名到IP地址的轉(zhuǎn)換表。每個(gè)轉(zhuǎn)換表項(xiàng)是單獨(dú)的一行。每行中,IP地址放在第一列,其后跟隨相應(yīng)的域名。IP地址與域名之間至少由一個(gè)空格分離。例如,在“HOSTS”文件中,可包括這樣的內(nèi)容102.54.94.97rhino.acme.com38.25.63.10 x.acme.com其中,包括了兩個(gè)域名及其相應(yīng)的IP地址。
在目前的因特網(wǎng)技術(shù)中,由于域名可由域名服務(wù)器轉(zhuǎn)換為IP地址,所以客戶機(jī)中的“HOSTS”文件一般為空,或者根本不存在。
本發(fā)明中,只需要在“HOSTS”文件中加入適當(dāng)?shù)膸仔校纯捎刹僮飨到y(tǒng)將所請(qǐng)求的域名轉(zhuǎn)換為本機(jī)的IP地址。
例如,假設(shè)本機(jī)的IP地址為“127.0.0.1”,則例如可以在“HOSTS”文件中加入以下內(nèi)容127.0.0.1www.ibm.com127.0.0.1www.uspto.gov則客戶發(fā)出的所有到“www.ibm.com”或者“www.uspto.gov”的請(qǐng)求都被重定向到客戶機(jī)本地。
當(dāng)恢復(fù)客戶機(jī)的系統(tǒng)設(shè)置時(shí),只需簡(jiǎn)單地清空“HOSTS”文件的內(nèi)容,則客戶發(fā)出的所有到“www.ibm.com”或者“www.uspto.gov”的請(qǐng)求都自動(dòng)地轉(zhuǎn)到由域名服務(wù)器獲得的相應(yīng)IP地址。
正是由于在客戶92處于離線狀態(tài)時(shí),網(wǎng)絡(luò)流重定向器701能夠?qū)⒖蛻粽?qǐng)示重定向到離線服務(wù)器702,并將離線服務(wù)器702的響應(yīng)返回給客戶92,所以才使客戶92能夠繼續(xù)工作,就好象客戶92處于在線狀態(tài)下工作一樣。
請(qǐng)求-響應(yīng)存儲(chǔ)器703中預(yù)先存儲(chǔ)了多個(gè)請(qǐng)求和與這些請(qǐng)求相對(duì)應(yīng)的多個(gè)響應(yīng)。這些請(qǐng)求和響應(yīng)可以是由用戶事先定義的,也可以通過(guò)本發(fā)明提供的以下方法自動(dòng)記錄下來(lái)。
在客戶92處于在線狀態(tài)工作時(shí),由用戶設(shè)定一種請(qǐng)求捕獲狀態(tài)。在請(qǐng)求捕獲狀態(tài)下,網(wǎng)絡(luò)流重定向器701可以始終將客戶請(qǐng)求重定向到離線服務(wù)器702。一旦客戶92發(fā)出請(qǐng)求,離線服務(wù)器702即可捕獲該請(qǐng)求。然后,離線服務(wù)器702通過(guò)網(wǎng)絡(luò)連接814將該請(qǐng)求發(fā)送到服務(wù)器88,并且接收服務(wù)器88返回的響應(yīng)(如圖7中虛線所示)。然后,離線服務(wù)器702將收到的服務(wù)器響應(yīng)返回給網(wǎng)絡(luò)流重定向器701。與此同時(shí),離線服務(wù)器702將捕獲的客戶請(qǐng)求和收到的服務(wù)器響應(yīng)按照一定的數(shù)據(jù)格式存儲(chǔ)在請(qǐng)求-響應(yīng)存儲(chǔ)器703中。這里所述的數(shù)據(jù)格式不構(gòu)成對(duì)本發(fā)明的限制。只要是在以后的處理中便于離線服務(wù)器702根據(jù)收到的請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng),就可以采用任何數(shù)據(jù)格式。網(wǎng)絡(luò)流重定向器701收到離線服務(wù)器返回的響應(yīng)之后,將該響應(yīng)返回給客戶92。重復(fù)上述處理過(guò)程,直到用戶指定結(jié)束請(qǐng)求捕獲狀態(tài)。因此,在請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)了多個(gè)請(qǐng)求和與之相對(duì)應(yīng)的多個(gè)響應(yīng)。
根據(jù)網(wǎng)絡(luò)傳輸所采用的協(xié)議的不同,比如可以采用HTTP(超文本傳輸協(xié)議)、FTP(文件傳輸協(xié)議)、TELNET(遠(yuǎn)程登錄)等等,請(qǐng)求和響應(yīng)的數(shù)據(jù)內(nèi)容是不同的。由于這些都屬于本領(lǐng)域內(nèi)熟練的技術(shù)人員的常識(shí),故在此不必詳述。
在客戶92處于在線狀態(tài)工作時(shí),客戶發(fā)送的每個(gè)請(qǐng)求經(jīng)過(guò)網(wǎng)絡(luò)連接814傳送到服務(wù)器88,并且經(jīng)過(guò)同一網(wǎng)絡(luò)連接接收服務(wù)器88返回的響應(yīng)。如前所述,在客戶92處于離線狀態(tài)工作時(shí),或者在用戶指定的請(qǐng)求捕獲狀態(tài)時(shí),這些請(qǐng)求被網(wǎng)絡(luò)流重定向器701重定向到離線服務(wù)器702,而這些響應(yīng)由離線服務(wù)器702發(fā)送到網(wǎng)絡(luò)流重定向器701,并且進(jìn)而返回給客戶92。
以上描述了產(chǎn)生請(qǐng)求-響應(yīng)存儲(chǔ)器703中的多個(gè)請(qǐng)求和多個(gè)響應(yīng)的方法,即通過(guò)用戶定義,或者在用戶指定的請(qǐng)求捕獲狀態(tài)中由離線服務(wù)器702捕獲。但是,可以理解的是,用戶可以對(duì)按照上述方法產(chǎn)生的請(qǐng)求和響應(yīng)進(jìn)行適當(dāng)編輯和修改,并且可以針對(duì)某些請(qǐng)求定義一些默認(rèn)響應(yīng),以模擬實(shí)際情況。另外,在一個(gè)客戶機(jī)上構(gòu)成了請(qǐng)求-響應(yīng)存儲(chǔ)器703的存儲(chǔ)內(nèi)容之后,可以簡(jiǎn)單地將該請(qǐng)求-響應(yīng)存儲(chǔ)器703的內(nèi)容拷貝到其他客戶機(jī)中的請(qǐng)求-響應(yīng)存儲(chǔ)器中,從而免去了以上的定義、捕獲、編輯的過(guò)程。
另外,本領(lǐng)域內(nèi)熟練的技術(shù)人員應(yīng)該理解到,本文中所述的存儲(chǔ)器可以是單獨(dú)的任何形式的存儲(chǔ)器,也可以是客戶機(jī)中已有存儲(chǔ)器中的一部分存儲(chǔ)區(qū)。例如,可以是位于圖2所示的磁盤驅(qū)動(dòng)器72中的數(shù)據(jù)庫(kù)、文件,或者是位于圖2所示的RAM 56中的存儲(chǔ)區(qū)。在客戶機(jī)為圖3所示的掌上計(jì)算機(jī)的情況下,本文中所述的存儲(chǔ)器可能是位于掌上計(jì)算機(jī)中所安裝的存儲(chǔ)卡上。
離線服務(wù)器702在客戶92處于離線狀態(tài)時(shí)開始工作。首先,離線服務(wù)器702接收由網(wǎng)絡(luò)流重定向器701重定向到客戶機(jī)本地的客戶請(qǐng)求。然后,離線服務(wù)器702根據(jù)收到的客戶請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)與所收到的客戶請(qǐng)求相應(yīng)的響應(yīng)。
現(xiàn)在簡(jiǎn)要說(shuō)明離線服務(wù)器702如何根據(jù)收到的請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)。
假設(shè)請(qǐng)求-響應(yīng)存儲(chǔ)器703中已經(jīng)存儲(chǔ)了以下多個(gè)請(qǐng)求和多個(gè)響應(yīng)R1(請(qǐng)求1)S1(響應(yīng)1)R2(請(qǐng)求2)S2(響應(yīng)2)…Rn(請(qǐng)求n)Sn(響應(yīng)n)。
又假設(shè)離線服務(wù)器702剛剛收到一個(gè)請(qǐng)求R,則離線服務(wù)器702根據(jù)公式(1)構(gòu)造一個(gè)響應(yīng)SS=f(R,R1,R2,...,Rn,S1,S2,...,Sn) 公式(1)作為公式(1)的一種特例,響應(yīng)S可以是響應(yīng)S1至Sn中一員,按照公式(2)從響應(yīng)S1至Sn中進(jìn)行選擇
根據(jù)所采用的網(wǎng)絡(luò)傳輸協(xié)議的不同,上式中的“邏輯等于”的運(yùn)算方式也不盡相同。
以HTTP為例,假設(shè)R1的內(nèi)容為GET URL1DATE 99.01.01/HTTP剛剛收到的請(qǐng)求R的內(nèi)容為GET URL1DATE 99.01.10/HTTP顯然,R1與R的數(shù)據(jù)內(nèi)容是不相同的,但是實(shí)質(zhì)部分是相同的,即都存在“GET URL1”,即都是請(qǐng)求URL1所標(biāo)識(shí)的網(wǎng)絡(luò)資源。所以應(yīng)以相同的響應(yīng)來(lái)回復(fù)。因此,離線服務(wù)器702判斷為“R邏輯等于R1”,所以構(gòu)造一個(gè)響應(yīng)S,使其等于請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)的S1。
值得說(shuō)明的是,以上請(qǐng)求R1和R的數(shù)據(jù)內(nèi)容只是示意性的,實(shí)際的數(shù)據(jù)內(nèi)容會(huì)有所差別。但是這些差別并不構(gòu)成對(duì)本發(fā)明的限制。
作為公式(1)更一般的情況,可以根據(jù)請(qǐng)求R、請(qǐng)求R1至Rn以及響應(yīng)S1至Sn構(gòu)造一個(gè)響應(yīng)S。
在此僅舉一個(gè)簡(jiǎn)單的例子。假設(shè)R1的內(nèi)容為http//search.yahoo.com/bin/search?p=gameR的內(nèi)容為http//search.yahoo.com/bin/search?p=Internet雖然R1與R邏輯相等,但是兩個(gè)URL中包含的參數(shù)不同,所以不能將S1作為響應(yīng)S。此時(shí),可以構(gòu)造一個(gè)包括如下內(nèi)容的響應(yīng)S“對(duì)不起,本地?cái)?shù)據(jù)不足,不能搜索‘Internet”根據(jù)本發(fā)明,可以利用各種復(fù)雜的算法對(duì)離線服務(wù)器702進(jìn)行編程,使它能夠根據(jù)收到的請(qǐng)求R以及存儲(chǔ)在請(qǐng)求-響應(yīng)存儲(chǔ)器703中的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造出一個(gè)適當(dāng)?shù)捻憫?yīng)S。各種不同的算法并不構(gòu)成對(duì)本發(fā)明的限制。
在本發(fā)明的裝置中,除了如上所述的最基本部件網(wǎng)絡(luò)流重定向器701、離線服務(wù)器702和請(qǐng)求-響應(yīng)存儲(chǔ)器703之外,本發(fā)明的裝置還可以包括一個(gè)離線請(qǐng)求存儲(chǔ)器705和一個(gè)實(shí)際網(wǎng)絡(luò)服務(wù)裝置706,它們都位于客戶機(jī)中。在客戶92處于離線狀態(tài)工作時(shí),離線服務(wù)器702一旦收到客戶請(qǐng)求,除了根據(jù)該請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器703中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)之外,還將該請(qǐng)求接時(shí)間順序存儲(chǔ)到離線請(qǐng)求存儲(chǔ)器705中。在客戶結(jié)束離線狀態(tài)后,離線請(qǐng)求存儲(chǔ)器705中存儲(chǔ)了客戶92在離線狀態(tài)下發(fā)送的所有請(qǐng)求。在客戶92進(jìn)入在線狀態(tài)工作之后,實(shí)際網(wǎng)絡(luò)服務(wù)裝置706開始工作,它按照時(shí)間順序依次從離線請(qǐng)求存儲(chǔ)器705中取出一個(gè)請(qǐng)求,然后通過(guò)網(wǎng)絡(luò)連接814發(fā)送到服務(wù)器88,由服務(wù)器88實(shí)際完成客戶92曾經(jīng)請(qǐng)求完成的工作。
更好的是,本發(fā)明的裝置中還可以包括一個(gè)離線響應(yīng)存儲(chǔ)器704、一個(gè)比較裝置707和一個(gè)通知裝置708,它們都位于客戶機(jī)中。在客戶92處于離線狀態(tài)工作時(shí),離線服務(wù)器702在向網(wǎng)絡(luò)流重定向器701返回一個(gè)響應(yīng)之后,還將該響應(yīng)接時(shí)間順序存儲(chǔ)到離線響應(yīng)存儲(chǔ)器704中。這樣,離線響應(yīng)存儲(chǔ)器704中存儲(chǔ)的響應(yīng)是與離線請(qǐng)求存儲(chǔ)器705中存儲(chǔ)的請(qǐng)求相對(duì)應(yīng)的。當(dāng)然,本領(lǐng)域內(nèi)熟練的技術(shù)人員應(yīng)該理解到,離線請(qǐng)求存儲(chǔ)器705和離線響應(yīng)存儲(chǔ)器704可以是單獨(dú)的存儲(chǔ)器或存儲(chǔ)區(qū),也可以是位于同一個(gè)存儲(chǔ)器或存儲(chǔ)區(qū)中,只要能夠保證請(qǐng)求與響應(yīng)之間的相關(guān)聯(lián)的關(guān)系即可。這些小的差別不構(gòu)成對(duì)本發(fā)明的限制。在客戶結(jié)束離線狀態(tài)后,不但離線請(qǐng)求存儲(chǔ)器705中存儲(chǔ)了客戶92在離線狀態(tài)下發(fā)送的所有請(qǐng)求,而且離線響應(yīng)存儲(chǔ)器704中存儲(chǔ)了離線服務(wù)器702向客戶92發(fā)送的所有響應(yīng)。在客戶92進(jìn)入在線狀態(tài)工作之后,實(shí)際網(wǎng)絡(luò)服務(wù)裝置706開始工作,它按照時(shí)間順序依次從離線請(qǐng)求存儲(chǔ)器705中取出一個(gè)請(qǐng)求,然后通過(guò)網(wǎng)絡(luò)連接814發(fā)送到服務(wù)器88,由服務(wù)器88實(shí)際完成客戶92曾經(jīng)請(qǐng)求完成的工作。然后,通過(guò)網(wǎng)絡(luò)連接814接收服務(wù)器88返回的響應(yīng),將該響應(yīng)送到比較裝置707。比較裝置707對(duì)該響應(yīng)與存儲(chǔ)在離線響應(yīng)存儲(chǔ)器704中的與所發(fā)送的請(qǐng)求相關(guān)聯(lián)的響應(yīng)進(jìn)行比較。如果比較結(jié)果指示存在邏輯錯(cuò)誤,則啟動(dòng)通知裝置708向用戶報(bào)告這種錯(cuò)誤。一種可能的方式是調(diào)用客戶服務(wù)軟件。實(shí)際網(wǎng)絡(luò)服務(wù)裝置706一直重復(fù)上述過(guò)程,直到離線請(qǐng)求存儲(chǔ)器705中的請(qǐng)求都被檢索出。
作為上述由比較裝置707執(zhí)行的比較運(yùn)算的例子,可以對(duì)兩個(gè)響應(yīng)的狀態(tài)碼進(jìn)行比較。假設(shè)將離線請(qǐng)求存儲(chǔ)器705中的請(qǐng)求R1’發(fā)送到服務(wù)器88之后,實(shí)際網(wǎng)絡(luò)服務(wù)裝置706收到的響應(yīng)S為S<HTTP 1.0 302 Object Not Found而在離線響應(yīng)存儲(chǔ)器704中存儲(chǔ)的與請(qǐng)求R1’相關(guān)聯(lián)的響應(yīng)為S1’S1’<HTTP 1.0 200 OK比較裝置707對(duì)響應(yīng)S和S1’的狀態(tài)碼進(jìn)行比較,發(fā)現(xiàn)它們的狀態(tài)碼不相等,則說(shuō)明存在邏輯錯(cuò)誤。也就是說(shuō),曾經(jīng)向客戶返回的響應(yīng)S1’是錯(cuò)誤的。于是,比較裝置707啟動(dòng)通知裝置708向用戶報(bào)告這一邏輯錯(cuò)誤。
當(dāng)然,在實(shí)際應(yīng)用中,還可能有其他的比較方法。但是這些小的差別不構(gòu)成對(duì)本發(fā)明的限制。
現(xiàn)在參照?qǐng)D8,圖中示出在客戶處于離線狀態(tài)工作時(shí),本發(fā)明的方法的基本流程圖。在步驟800開始之后,本發(fā)明的方法首先在步驟801判斷客戶是否進(jìn)入離線狀態(tài)?如果客戶未進(jìn)入離線狀態(tài),則不工作,或者轉(zhuǎn)到圖9所示的流程圖。如果在步驟801判斷出客戶進(jìn)入離線狀態(tài),則過(guò)程進(jìn)行到步驟802。在步驟802,修改客戶機(jī)的系統(tǒng)設(shè)置,使得客戶請(qǐng)求被從網(wǎng)絡(luò)連接重定向到客戶機(jī)本地。修改客戶機(jī)系統(tǒng)設(shè)置的方法如前文參照?qǐng)D7所述,可以僅是修改客戶機(jī)中存儲(chǔ)的“HOSTS”文件。在此,不再贅述。
步驟803,接收客戶發(fā)送的一個(gè)請(qǐng)求。然后,步驟804將該請(qǐng)求存儲(chǔ)到離線請(qǐng)求存儲(chǔ)器中。步驟805,根據(jù)收到的請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)。這里,離線請(qǐng)求存儲(chǔ)器、請(qǐng)求-響應(yīng)存儲(chǔ)器以及根據(jù)收到的請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)的方法都如前文參照?qǐng)D7所述。
然后,步驟806,將在步驟805構(gòu)造的一個(gè)響應(yīng)返回給客戶,并且在步驟807將該響應(yīng)存儲(chǔ)到離線響應(yīng)存儲(chǔ)器。這里的離線響應(yīng)存儲(chǔ)器如前文參照?qǐng)D7所述。
接著,在步驟808判斷客戶是否結(jié)束離線狀態(tài)。如果步驟808的判斷為否,則處理轉(zhuǎn)到步驟803,繼續(xù)工作;否則,結(jié)束工作,或者轉(zhuǎn)到圖9所示的流程圖。
這里值得說(shuō)明的是,圖中所示的有些步驟的執(zhí)行順序是可以改變的。例如,步驟804可以在步驟805之后、或者在步驟806之后、或者在步驟807之后執(zhí)行,而不必緊接在步驟803之后執(zhí)行。又比如,步驟807也可以在步驟806之前執(zhí)行。這些細(xì)微的差別不構(gòu)成對(duì)本發(fā)明的限制。另外,如果后文不利用離線響應(yīng)存儲(chǔ)器中的內(nèi)容,也可以省略步驟807。
另外,離線請(qǐng)求存儲(chǔ)器和離線響應(yīng)存儲(chǔ)器可以是單獨(dú)的存儲(chǔ)器或存儲(chǔ)區(qū),也可以是位于同一個(gè)存儲(chǔ)器或存儲(chǔ)區(qū)中,只要能夠保證請(qǐng)求與響應(yīng)之間的相關(guān)聯(lián)的關(guān)系即可。這些小的差別不構(gòu)成對(duì)本發(fā)明的限制。
現(xiàn)在參照?qǐng)D9,示出在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí)本發(fā)明的方法的流程圖。在步驟901,判斷客戶是否進(jìn)入在線狀態(tài),如果為否,則轉(zhuǎn)到步驟910,處理結(jié)束。如果步驟901的判斷為是,則轉(zhuǎn)到步驟902。步驟902修改客戶機(jī)的系統(tǒng)設(shè)置,使得客戶請(qǐng)求被從客戶機(jī)本地重定向到網(wǎng)絡(luò)連接。修改客戶機(jī)系統(tǒng)設(shè)置的方法如前文對(duì)步驟802所述,不再贅述。
步驟903判斷離線請(qǐng)求存儲(chǔ)器中是否存在仍未被檢索的請(qǐng)求。如果步驟903判斷結(jié)果為否,則處理進(jìn)行到步驟910,處理結(jié)束;否則進(jìn)行到步驟904。步驟904,從離線請(qǐng)求存儲(chǔ)器中檢索出一個(gè)請(qǐng)求。步驟905,通過(guò)網(wǎng)絡(luò)連接將該請(qǐng)求發(fā)送到服務(wù)器,由服務(wù)器實(shí)際完成客戶曾經(jīng)請(qǐng)求過(guò)的任務(wù)。步驟906,通過(guò)網(wǎng)絡(luò)連接接收服務(wù)器應(yīng)該返回的一個(gè)響應(yīng)。然后,在步驟907對(duì)服務(wù)器返回的這個(gè)響應(yīng)與剛剛向服務(wù)器發(fā)送的那個(gè)請(qǐng)求相關(guān)聯(lián)的響應(yīng)(曾在前述圖8的步驟807中存儲(chǔ)到離線響應(yīng)存儲(chǔ)器中)進(jìn)行比較。步驟908,判斷步驟907所進(jìn)行的比較運(yùn)算的結(jié)果是否指示存在邏輯錯(cuò)誤。這里所述的邏輯錯(cuò)誤,與前文參照?qǐng)D7對(duì)比較裝置707的描述中所述的邏輯錯(cuò)誤具有相同的含義。如果步驟908的判斷結(jié)果為否,說(shuō)明在圖8的步驟806中向客戶返回的響應(yīng)是正確的,則處理轉(zhuǎn)到步驟903;否則,處理進(jìn)行到步驟909。在步驟909,通過(guò)適當(dāng)方式向用戶通知該邏輯錯(cuò)誤,并且由用戶采取適當(dāng)措施對(duì)所發(fā)送的請(qǐng)求進(jìn)行修改。步驟909中所采用的一種可能的方式是調(diào)用客戶服務(wù)軟件。然后可以重新向服務(wù)器發(fā)送修改后的請(qǐng)求。步驟909之后,處理返回到步驟903。
現(xiàn)在參照?qǐng)D10,舉例示出一個(gè)保險(xiǎn)公司的內(nèi)聯(lián)網(wǎng)頁(yè)的相互關(guān)系。當(dāng)該保險(xiǎn)公司的業(yè)務(wù)員利用客戶即瀏覽器(比如是網(wǎng)景公司的Communicator或者是微軟公司的IE)訪問(wèn)該保險(xiǎn)公司的網(wǎng)址時(shí),瀏覽器向服務(wù)器發(fā)送GET HTTP請(qǐng)求。該公司的服務(wù)器收到請(qǐng)求后向?yàn)g覽器返回以HTML(超文本標(biāo)記語(yǔ)言)格式書寫的主頁(yè)面描述文件。瀏覽器收到這個(gè)HTML文件后,根據(jù)文件中所含的HTML標(biāo)記,按照這些標(biāo)記所規(guī)定的格式,在客戶機(jī)的顯示屏幕上顯示HTML文件中所含的其他數(shù)據(jù)。業(yè)務(wù)員看到的即是該保險(xiǎn)公司的內(nèi)聯(lián)網(wǎng)主頁(yè)1000。該主頁(yè)1000中存在兩個(gè)熱鏈接,分別對(duì)應(yīng)兩個(gè)選項(xiàng)1.銷售保險(xiǎn);2.賠償。
當(dāng)業(yè)務(wù)員點(diǎn)擊第一熱鏈接(即用鼠標(biāo)點(diǎn)擊“1.銷售保險(xiǎn)”)后,瀏覽器從主頁(yè)文件中獲得第一個(gè)熱連接的URL,形成另一個(gè)請(qǐng)求,將該請(qǐng)求送到服務(wù)器。服務(wù)器收到該請(qǐng)求后,根據(jù)請(qǐng)求中指定的URL,形成另一個(gè)響應(yīng),即以HTML格式書寫的另一頁(yè)面描述文件,返回給瀏覽器。瀏覽器收到該另一個(gè)響應(yīng),在客戶機(jī)的顯示屏幕上顯示文件的數(shù)據(jù),業(yè)務(wù)員看到的即是銷售表格1001。在銷售表格1001中,有三個(gè)空白1001A、1001B和1001C,業(yè)務(wù)員在銷售保險(xiǎn)時(shí)需要在這三個(gè)空白中填寫顧客的適當(dāng)數(shù)據(jù),以完成保險(xiǎn)的銷售。如同本領(lǐng)域內(nèi)熟練的技術(shù)人員所知,三個(gè)空白1001A、1001B和1001C中填寫的數(shù)據(jù)分別作為三個(gè)參數(shù)存儲(chǔ)在一個(gè)URL中。這里所述的三個(gè)空白只是舉例而已,空白的具體數(shù)目與保險(xiǎn)銷售業(yè)務(wù)所需的顧客數(shù)據(jù)項(xiàng)目有關(guān)。這一點(diǎn)不構(gòu)成對(duì)本發(fā)明的限制。
頁(yè)面1001中包括兩個(gè)熱連接,分別對(duì)應(yīng)“OK”和“取消”。如果業(yè)務(wù)員在頁(yè)面1001中點(diǎn)擊“OK”,瀏覽器將包括上述三個(gè)參數(shù)的URL的請(qǐng)求發(fā)送給服務(wù)器,服務(wù)器處理正確無(wú)誤后,返回另一個(gè)HTTP響應(yīng),瀏覽器相應(yīng)地顯示“銷售成功”頁(yè)面1003。如果業(yè)務(wù)員在頁(yè)面1001中點(diǎn)擊“取消”,則瀏覽器顯示“銷售取消”頁(yè)面1004。
類似地,當(dāng)業(yè)務(wù)員在內(nèi)聯(lián)網(wǎng)主頁(yè)1000中點(diǎn)擊第二熱連接(即用鼠標(biāo)點(diǎn)擊“2.賠償”)時(shí),瀏覽器顯示從服務(wù)器獲得的賠償表格1002。其中也含有三個(gè)參數(shù)。如果業(yè)務(wù)員在頁(yè)面1002中點(diǎn)擊“OK”后,瀏覽器將向服務(wù)器發(fā)送含有三個(gè)參數(shù)數(shù)據(jù)的URL的請(qǐng)求。服務(wù)器處理正確無(wú)誤后,返回“賠償成功”頁(yè)面1005。如果業(yè)務(wù)員在頁(yè)面1002中點(diǎn)擊“取消”,則瀏覽器顯示“賠償取消”頁(yè)面1006。
在這一例子中,由于采用的網(wǎng)絡(luò)傳輸協(xié)議是HTTP,所以在瀏覽器與服務(wù)器之間傳送的請(qǐng)求和響應(yīng)符合HTTP規(guī)定的格式。
假設(shè)該保險(xiǎn)公司的某個(gè)業(yè)務(wù)員希望訪問(wèn)三個(gè)顧客,向其中的兩位顧客銷售保險(xiǎn),并向另一位顧客賠償。可以采用的第一種作法是,將這三位顧客請(qǐng)到保險(xiǎn)公司來(lái),由該業(yè)務(wù)員利用位于公司內(nèi)部的客戶機(jī)訪問(wèn)公司的內(nèi)聯(lián)網(wǎng)主頁(yè),填寫上述表格1001和1002,完成這些業(yè)務(wù)。但是這種將顧客請(qǐng)進(jìn)來(lái)的作法是不現(xiàn)實(shí)的。第二種作法是,由業(yè)務(wù)員攜帶安裝有瀏覽器的筆記本計(jì)算機(jī)或者掌上計(jì)算機(jī)外出拜訪上述三位顧客。在拜訪每一位顧客時(shí),利用筆記本計(jì)算機(jī)或者掌上計(jì)算機(jī)通過(guò)撥號(hào)網(wǎng)絡(luò)取得與保險(xiǎn)公司服務(wù)器的連接,獲得相應(yīng)表格,填寫所需數(shù)據(jù),由服務(wù)器完成相應(yīng)的銷售或賠償業(yè)務(wù)。由于不能保證在任何時(shí)候都能取得網(wǎng)絡(luò)連接,并且考慮到因特網(wǎng)慢的傳輸速度以及網(wǎng)絡(luò)傳輸?shù)陌踩詥?wèn)題,所以第二種方法也有其不利之處。
如果采用本發(fā)明,即可克服上述諸多不便。比如,在該業(yè)務(wù)員外出拜上述這三位顧客之前,將其筆記本計(jì)算機(jī)或者掌上計(jì)算機(jī)連接到公司的服務(wù)器上,然后指定進(jìn)入一種如前文所述的請(qǐng)求捕獲狀態(tài)。如前文所述,在請(qǐng)求捕獲狀態(tài)下,業(yè)務(wù)員利用瀏覽器分別訪問(wèn)一遍內(nèi)聯(lián)網(wǎng)主頁(yè)1000、銷售表格1001、銷售成功1003、銷售取消1004、賠償表格1002、賠償成功1005和賠償取消1006。在完成這一過(guò)程之后,在該業(yè)務(wù)員的筆記本計(jì)算機(jī)或者掌上計(jì)算機(jī)中所安裝的請(qǐng)求-響應(yīng)存儲(chǔ)器中就已經(jīng)存儲(chǔ)了在其外出期間需要向保險(xiǎn)公司的服務(wù)器發(fā)送的各種請(qǐng)求以及相應(yīng)的響應(yīng)。
當(dāng)然,請(qǐng)求-響應(yīng)存儲(chǔ)器的數(shù)據(jù)內(nèi)容也可以由保險(xiǎn)公司的計(jì)算機(jī)技術(shù)人員預(yù)先定義和編輯。在每位業(yè)務(wù)員外出辦理業(yè)務(wù)之前,將制定好的數(shù)據(jù)內(nèi)容拷貝到業(yè)務(wù)員的筆記本計(jì)算機(jī)中的請(qǐng)求-響應(yīng)存儲(chǔ)器中,或者將適當(dāng)?shù)拇鎯?chǔ)卡安裝到其掌上計(jì)算機(jī)中。
這樣,在外出期間,可以不建立與公司服務(wù)器的網(wǎng)絡(luò)連接,即客戶離線工作,也能夠獲得與在線工作一樣的效果。
現(xiàn)在參照?qǐng)D11,示出瀏覽器在離線狀態(tài)下工作時(shí)可得到的響應(yīng)的舉例。
比如,在業(yè)務(wù)員拜訪第一位顧客時(shí),運(yùn)行瀏覽器,根據(jù)本發(fā)明的方法或者裝置,即可根據(jù)瀏覽器發(fā)送的請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)相應(yīng)的響應(yīng),瀏覽器獲得該響應(yīng),顯示內(nèi)聯(lián)網(wǎng)主頁(yè)1100。因?yàn)闃I(yè)務(wù)員向第一位顧客銷售保險(xiǎn),所以點(diǎn)擊“1.銷售保險(xiǎn)”。瀏覽器同樣可以獲得一個(gè)根據(jù)瀏覽器請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造的的響應(yīng),并且顯示銷售表格1101。業(yè)務(wù)員在空白1101A、1102B和1103C中填寫第一位顧客的有關(guān)數(shù)據(jù),然后點(diǎn)擊“OK”。瀏覽器獲得相應(yīng)響應(yīng),顯示銷售成功1103。然后退出瀏覽器。在這一過(guò)程中,在業(yè)務(wù)員的筆記本計(jì)算機(jī)中所安裝的離線請(qǐng)求存儲(chǔ)器和離線響應(yīng)存儲(chǔ)器中存儲(chǔ)了多個(gè)請(qǐng)求和多個(gè)響應(yīng)。
與上述過(guò)程類似地,在業(yè)務(wù)員拜訪第二位顧客之后,在離線請(qǐng)求存儲(chǔ)器和離線響應(yīng)存儲(chǔ)器中增加了多個(gè)請(qǐng)求和多個(gè)響應(yīng)。
在業(yè)務(wù)員拜訪第三位顧客時(shí),啟動(dòng)瀏覽器,顯示內(nèi)聯(lián)網(wǎng)主頁(yè)1100。因?yàn)橐虻谌活櫩唾r償,所以點(diǎn)擊“2.賠償”。瀏覽器獲得一個(gè)根據(jù)瀏覽器請(qǐng)求以及在請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造的響應(yīng),并且顯示賠償表格1102。業(yè)務(wù)員填寫顧客數(shù)據(jù),然后點(diǎn)擊“OK”。瀏覽器獲得相應(yīng)響應(yīng),顯示賠償成功1105。然后退出瀏覽器。在這一過(guò)程中,在業(yè)務(wù)員的筆記本計(jì)算機(jī)中所安裝的離線請(qǐng)求存儲(chǔ)器和離線響應(yīng)存儲(chǔ)器中又增加了多個(gè)請(qǐng)求和多個(gè)響應(yīng)。
因此,按照本發(fā)明的方法或者裝置,無(wú)論是對(duì)于業(yè)務(wù)員來(lái)講還是對(duì)于顧客來(lái)講,上述過(guò)程就如同瀏覽器在線工作一樣。
在業(yè)務(wù)員返回保險(xiǎn)公司之后,可以將其筆記本計(jì)算機(jī)通過(guò)內(nèi)聯(lián)網(wǎng)與服務(wù)器連接,根據(jù)本發(fā)明的方法或裝置即可自動(dòng)地將離線請(qǐng)求存儲(chǔ)器中的多個(gè)請(qǐng)求分別發(fā)送到服務(wù)器,由服務(wù)器完成實(shí)際的任務(wù),即兩次銷售和一次賠償。當(dāng)然,如前文所述,在一過(guò)程中,有可能向業(yè)務(wù)員報(bào)告存在的邏輯錯(cuò)誤。比如,在銷售保險(xiǎn)時(shí),顧客將其年齡誤填為90歲,當(dāng)時(shí)瀏覽器得到的響應(yīng)是“銷售成功”。而根據(jù)該保險(xiǎn)公司的規(guī)定,對(duì)于年齡在90歲或90歲以上的人不提供保險(xiǎn),所以服務(wù)器在進(jìn)行這項(xiàng)任務(wù)時(shí),返回比如“年齡不能超過(guò)90歲”這樣的響應(yīng)。因此,出現(xiàn)邏輯錯(cuò)誤,則將該邏輯錯(cuò)誤通知給業(yè)務(wù)員,比如在瀏覽器窗口中顯示“顧客年齡不得超過(guò)90歲”。然后,業(yè)務(wù)員可以向顧客核實(shí)或者修改錯(cuò)誤的顧客數(shù)據(jù),再次發(fā)送請(qǐng)求。
另外,可將本發(fā)明的方法實(shí)現(xiàn)為計(jì)算機(jī)程序,然后存儲(chǔ)到計(jì)算機(jī)可讀的程序記錄媒體上。實(shí)際應(yīng)用中,可將該程序安裝到客戶端軟件所在的移動(dòng)裝置中,從而不必修改客戶端軟件,即可使客戶端軟件能夠在離線狀態(tài)下工作。這里所指的程序記錄媒體可以包括各種形式,比如以磁的形式或者以光的形式。各種不同的形式不構(gòu)成對(duì)本發(fā)明的限制。
雖然以上結(jié)合附圖詳細(xì)描述了本發(fā)明的最佳實(shí)施方式,但是對(duì)于本領(lǐng)域內(nèi)熟練的技術(shù)人員而言,可以做出各種修改和變更,而不背離本發(fā)明的范圍和實(shí)質(zhì)。因此,本發(fā)明的范圍僅由權(quán)利要求書限定。
權(quán)利要求
1.一種為離線客戶的請(qǐng)求提供響應(yīng)的裝置,其特征在于包括一個(gè)請(qǐng)求-響應(yīng)存儲(chǔ)器(703),設(shè)置在客戶機(jī)中,在其中存儲(chǔ)了多個(gè)請(qǐng)求和多個(gè)響應(yīng);一個(gè)網(wǎng)絡(luò)流重定向器(701),用于在客戶處于離線狀態(tài)時(shí),通過(guò)修改客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從網(wǎng)絡(luò)連接重定向到客戶機(jī)本身,以及用于在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí),通過(guò)恢復(fù)客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從客戶機(jī)本身重定向到網(wǎng)絡(luò)連接;以及一個(gè)離線服務(wù)器(702),設(shè)置在客戶機(jī)中,用于接收由所述網(wǎng)絡(luò)流重定向器(701)重定向到客戶機(jī)本身的客戶請(qǐng)求、根據(jù)收到的請(qǐng)求以及所述請(qǐng)求-響應(yīng)存儲(chǔ)器(703)中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng)并將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
2.根據(jù)權(quán)利要求1的裝置,其特征在于所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是在客戶處于在線狀態(tài)時(shí)在客戶機(jī)中截獲的多個(gè)客戶請(qǐng)求和多個(gè)服務(wù)器響應(yīng)。
3.根據(jù)權(quán)利要求1的裝置,其特征在于所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是由用戶預(yù)先定義的。
4.根據(jù)權(quán)利要求1至3中任一項(xiàng)的裝置,其特征在于所述離線服務(wù)器還包括一個(gè)離線請(qǐng)求存儲(chǔ)器(705),用于存儲(chǔ)所述離線服務(wù)器收到的每個(gè)客戶請(qǐng)求;并且所述裝置還包括一個(gè)實(shí)際網(wǎng)絡(luò)服務(wù)裝置(706),設(shè)置在客戶機(jī)中,用于在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)之后,通過(guò)網(wǎng)絡(luò)連接向服務(wù)器發(fā)送所述離線請(qǐng)求存儲(chǔ)器(705)中存儲(chǔ)的每個(gè)請(qǐng)求。
5.根據(jù)權(quán)利要求4的裝置,其特征在于所述離線服務(wù)器還包括一個(gè)離線響應(yīng)存儲(chǔ)器(704),用于按照與所述離線請(qǐng)求存儲(chǔ)器中的請(qǐng)求相關(guān)聯(lián)的方式存儲(chǔ)返回給客戶的響應(yīng);并且所述實(shí)際網(wǎng)絡(luò)服務(wù)裝置在向服務(wù)器發(fā)送每個(gè)請(qǐng)求之后還接收從服務(wù)器返回的每個(gè)響應(yīng);所述裝置還包括一個(gè)比較裝置(707),用于對(duì)所述實(shí)際網(wǎng)絡(luò)服務(wù)裝置從服務(wù)器收到的響應(yīng)與在所述離線響應(yīng)存儲(chǔ)器中存儲(chǔ)的與發(fā)送的請(qǐng)求相關(guān)聯(lián)的響應(yīng)進(jìn)行比較;以及一個(gè)通知裝置(708),用于在所述比較裝置的比較結(jié)果指示存在邏輯錯(cuò)誤時(shí)向用戶通知該錯(cuò)誤。
6.一種為離線客戶的請(qǐng)求提供響應(yīng)的方法,其特征在于包括以下步驟(a)在客戶機(jī)中設(shè)置一個(gè)請(qǐng)求-響應(yīng)存儲(chǔ)器,在其中存儲(chǔ)了多個(gè)請(qǐng)求和多個(gè)響應(yīng);(b)在客戶進(jìn)入離線狀態(tài)時(shí),通過(guò)修改客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從網(wǎng)絡(luò)連接重定向到客戶機(jī)本身;以及(c)在客戶處于離線狀態(tài)時(shí),在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(c1)接收被重定向到客戶機(jī)本身的請(qǐng)求,(c2)根據(jù)所述請(qǐng)求以及所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng),以及(c3)將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
7.根據(jù)權(quán)利要求6的方法,其特征在于所述步驟(a)中的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是通過(guò)在客戶處于在線狀態(tài)時(shí)重復(fù)執(zhí)行以下步驟獲得的截獲客戶向服務(wù)器發(fā)送的一個(gè)請(qǐng)求;通過(guò)網(wǎng)絡(luò)連接向服務(wù)器發(fā)送所述請(qǐng)求;接收服務(wù)器返回的一個(gè)響應(yīng);將所述響應(yīng)返回給客戶;以及將所述請(qǐng)求和所述響應(yīng)存儲(chǔ)到所述請(qǐng)求-響應(yīng)存儲(chǔ)器中。
8.根據(jù)權(quán)利要求6的方法,其特征在于所述步驟(a)中的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是由用戶預(yù)先定義的。
9.根據(jù)權(quán)利要求6至8中任一項(xiàng)的方法,其特征在于所述步驟(c1)還將收到的請(qǐng)求記錄到位于客戶機(jī)中的離線請(qǐng)求存儲(chǔ)器中,并且所述方法還包括步驟(d)在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí),通過(guò)恢復(fù)客戶機(jī)的系統(tǒng)設(shè)置,將客戶請(qǐng)求從客戶機(jī)本身重定向到網(wǎng)絡(luò)連接;以及(e)在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(e1)從所述離線請(qǐng)求存儲(chǔ)器中檢索出一個(gè)請(qǐng)求;以及(e2)通過(guò)網(wǎng)絡(luò)連接向服務(wù)器發(fā)送所述請(qǐng)求。
10.根據(jù)權(quán)利要求9的方法,其特征在于所述步驟(c3)還將向客戶返回的響應(yīng)按照與步驟(c1)中記錄的請(qǐng)求相關(guān)聯(lián)的方式記錄到位于客戶機(jī)中的離線響應(yīng)存儲(chǔ)器中,并且所述步驟(e)還包括以下步驟(e3)接收從服務(wù)器返回的一個(gè)響應(yīng);(e4)從所述離線響應(yīng)存儲(chǔ)器中檢索出一個(gè)與在步驟(e1)檢索的請(qǐng)求相關(guān)聯(lián)的響應(yīng);(e5)對(duì)在步驟(e3)收到的響應(yīng)與在步驟(e4)檢索出的響應(yīng)進(jìn)行比較;以及(e6)如果比較結(jié)果指示存在邏輯錯(cuò)誤,則向用戶通知該邏輯錯(cuò)誤。
11.一種計(jì)算機(jī)可讀的程序記錄媒體,該媒體上記錄了用于執(zhí)行以下步驟的程序在判斷出客戶進(jìn)入離線狀態(tài)時(shí),修改客戶機(jī)的系統(tǒng)設(shè)置,使得客戶請(qǐng)求由網(wǎng)絡(luò)連接重定向到客戶機(jī)本身;以及在客戶處于離線狀態(tài)時(shí),在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(c1)接收被重定向到客戶機(jī)本身的請(qǐng)求,(c2)根據(jù)所述請(qǐng)求以及位于客戶機(jī)中的請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)構(gòu)造一個(gè)響應(yīng),以及(c3)將所述響應(yīng)作為服務(wù)器響應(yīng)返回給客戶。
12.根據(jù)權(quán)利要求11的計(jì)算機(jī)可讀的程序記錄媒體,其特征在于所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是通過(guò)在客戶處于在線狀態(tài)時(shí)重復(fù)執(zhí)行以下步驟獲得的截獲客戶向服務(wù)器發(fā)送的一個(gè)請(qǐng)求;通過(guò)網(wǎng)絡(luò)連接向服務(wù)器發(fā)送所述請(qǐng)求;接收服務(wù)器返回的一個(gè)響應(yīng);將所述響應(yīng)返回給客戶;以及將所述請(qǐng)求和所述響應(yīng)存儲(chǔ)到所述請(qǐng)求-響應(yīng)存儲(chǔ)器中。
13.根據(jù)權(quán)利要求11的計(jì)算機(jī)可讀的程序記錄媒體,其特征在于所述請(qǐng)求-響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和多個(gè)響應(yīng)是由用戶預(yù)先定義的。
14.根據(jù)權(quán)利要求11至13中任一項(xiàng)的計(jì)算機(jī)可讀的程序記錄媒體,其特征在于所述步驟(c1)還將收到的請(qǐng)求記錄到位于客戶機(jī)中的離線請(qǐng)求存儲(chǔ)器中,并且所述媒體中記錄的程序還執(zhí)行以下步驟(d)在客戶結(jié)束離線狀態(tài)并且進(jìn)入在線狀態(tài)時(shí),恢復(fù)客戶機(jī)的系統(tǒng)設(shè)置,使得客戶請(qǐng)求從客戶機(jī)本身重定向到網(wǎng)絡(luò)連接;以及(e)在客戶機(jī)的本地重復(fù)執(zhí)行以下步驟(e1)從所述離線請(qǐng)求存儲(chǔ)器中檢索出一個(gè)請(qǐng)求;以及(e2)通過(guò)網(wǎng)絡(luò)連接向服務(wù)器發(fā)送所述請(qǐng)求。
15.根據(jù)權(quán)利要求14的計(jì)算機(jī)可讀的程序記錄媒體,其特征在于所述步驟(c3)還將向客戶返回的響應(yīng)按照與步驟(c1)中記錄的請(qǐng)求相關(guān)聯(lián)的方式記錄到位于客戶機(jī)中的離線響應(yīng)存儲(chǔ)器中,并且所述步驟(e)還包括以下步驟(e3)接收從服務(wù)器返回的一個(gè)響應(yīng);(e4)從所述離線響應(yīng)存儲(chǔ)器中檢索出一個(gè)與在步驟(e1)檢索的請(qǐng)求相關(guān)聯(lián)的響應(yīng);(e5)對(duì)在步驟(e3)收到的響應(yīng)與在步驟(e4)檢索出的響應(yīng)進(jìn)行比較;以及(e6)如果比較結(jié)果指示存在邏輯錯(cuò)誤,則向用戶通知該邏輯錯(cuò)誤。
全文摘要
一種為離線客戶請(qǐng)求提供響應(yīng)的裝置,包括:一個(gè)位于本地的請(qǐng)求—響應(yīng)存儲(chǔ)器,存儲(chǔ)了多個(gè)請(qǐng)求和響應(yīng);一個(gè)網(wǎng)絡(luò)流重定向器,在客戶離線時(shí),修改客戶機(jī)系統(tǒng)設(shè)置,將客戶請(qǐng)求重定向到客戶機(jī)本身,以及在客戶結(jié)束離線且進(jìn)入在線時(shí),恢復(fù)客戶機(jī)系統(tǒng)設(shè)置,將客戶請(qǐng)求重定向到網(wǎng)絡(luò)連接;以及一個(gè)位于本地的離線服務(wù)器,接收被重定向到客戶機(jī)本身的請(qǐng)求、根據(jù)該請(qǐng)求以及請(qǐng)求—響應(yīng)存儲(chǔ)器中存儲(chǔ)的多個(gè)請(qǐng)求和響應(yīng)構(gòu)造一個(gè)響應(yīng)并將其返回給客戶。
文檔編號(hào)G06F12/00GK1262490SQ9910160
公開日2000年8月9日 申請(qǐng)日期1999年1月28日 優(yōu)先權(quán)日1999年1月28日
發(fā)明者劉 東, 劉友祥, 陳曉艷, 張小沛 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司