CN1262490A - 为离线客户请求提供响应的方法及装置 - Google Patents

为离线客户请求提供响应的方法及装置 Download PDF

Info

Publication number
CN1262490A
CN1262490A CN99101605A CN99101605A CN1262490A CN 1262490 A CN1262490 A CN 1262490A CN 99101605 A CN99101605 A CN 99101605A CN 99101605 A CN99101605 A CN 99101605A CN 1262490 A CN1262490 A CN 1262490A
Authority
CN
China
Prior art keywords
client
response
request
server
requests
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN99101605A
Other languages
English (en)
Other versions
CN1108578C (zh
Inventor
刘�东
刘友祥
陈晓艳
张小沛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN99101605A priority Critical patent/CN1108578C/zh
Priority to TW088115951A priority patent/TW526426B/zh
Priority to KR1020000001638A priority patent/KR100362981B1/ko
Priority to GB0001524A priority patent/GB2350452B/en
Priority to JP2000015232A priority patent/JP3457605B2/ja
Priority to US09/492,000 priority patent/US6757706B1/en
Publication of CN1262490A publication Critical patent/CN1262490A/zh
Application granted granted Critical
Publication of CN1108578C publication Critical patent/CN1108578C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Communication Control (AREA)

Abstract

一种为离线客户请求提供响应的装置,包括:一个位于本地的请求—响应存储器,存储了多个请求和响应;一个网络流重定向器,在客户离线时,修改客户机系统设置,将客户请求重定向到客户机本身,以及在客户结束离线且进入在线时,恢复客户机系统设置,将客户请求重定向到网络连接;以及一个位于本地的离线服务器,接收被重定向到客户机本身的请求、根据该请求以及请求—响应存储器中存储的多个请求和响应构造一个响应并将其返回给客户。

Description

为离线客户请求提供响应的方法及装置
本发明大致涉及在计算机网络中为客户的请求进行响应的方法及装置,并且更具体地涉及为处于离线状态的客户发送的请求进行响应的方法及装置。
二十世纪九十年代是以数据处理产业与消费电子产业相结合而受到推动的社会技术革命为标志的。如同所有的革命那样,这对技术浪潮起到了可观的推波助澜的效果。其效果是转而推动了已知的但是在若干年中相对默默无闻的技术的发展。这些技术的一个主要领域是与因特网相关的文档、媒体和程序的传播。电子娱乐和消费业与数据处理的结合极大地加速了对广泛分布的通信传播途径的需求。因特网,作为一个用于传播科学和政府数据的松散的计算机网络,在平静地存在了十几年之后,得到了广泛的发展,开始了惊人的扩展时期。随着这种扩展,商家和消费者可以直接访问所有的文档、媒体和计算机程序等。
因特网是全球最大的、开放的、由众多网络相互连接而成的计算机网络。它是由美国阿帕网(ARPAnet)发展而成的。主要采用TCP/IP协议。TCP/IP是“传输控制协议/互联网协议”的首字母缩略语,是美国国防部开发的用于计算机之间通信的软件协议。可以将因特网描述为由执行允许用户交互共享网络信息的联网协议的计算机互连而成的地理上分布的远程计算机网络系统。因为这种广泛使用的信息共享,诸如因特网这种远程网络已经非常全面地发展为“开放”系统。对于该系统,开发者能够基本上没有限制地设计软件应用程序以便执行特定的操作或者服务。对于有关因特网的节点、对象和链接的细节,可参见教科书《通晓因特网-Mastering the Internet》,作者为G.H.Cady等人,该书于1996年由美国加利弗尼亚州Alameda市的Sybex公司出版。
万维网(WWW)是因特网的多媒体信息检索系统。在Web环境中,客户机利用超文本传输协议(HTTP)实现对Web服务器的事务处理,其中HTTP是众所周知的应用程序协议,该协议允许用户利用称为超文本标记语言(HTML)的标准页面描述语言访问各种文件(如文本、图形、图象、声音、视频等文件)。HTML提供基础文件格式,并且允许开发者规定与其他服务器及文件的链接。
采用超文本协议的万维网遵循客户/服务器结构。万维网服务的客户端采用浏览器程序,可向万维网服务器发送各种请求,并对服务器返回的由HTML语言定义的超文本信息和各种多媒体数据格式进行解释、显示和播放。
在客户/服务器体系网络的实际应用中,往往不能保证客户端软件始终处于在线状态工作,尤其是对于移动装置中运行的客户端软件更是如此。目前被广泛采用的移动装置例如包括IBM公司的ThinkPad这样的笔记本计算机,3COM公司的PalmPilot或者IBM公司的WorkPad这样的掌上计算机,或者其他多种多样的内置有网络连接功能的手持装置。由于移动装置的移动性,造成在多数情况下不便于接入网络。
因此在不能取得网络连接的情况下,为了既发挥移动装置的方便特性又充分利用因特网的巨大优点,不得不要求客户端软件能够在离线状态下进行工作。
目前的客户端软件只有在特别设计之后才能够在离线状态下工作,否则不能正常工作。现有技术中,为了使客户端应用程序能够在离线状态下工作,已经开发了许多专用方法。但是这些方法都是针对于特定应用程序或者是针对于特定硬件的。所以需要一种简便通用的方法使得客户在离线状态下亦能正常工作。
在线状态与离线状态的重要区别在于,在线状态下,客户在必要时可以取得服务器的响应,而在离线状态下,则不能取得服务器的响应。所以在客户/服务器体系中,一般的客户端软件在离线状态下不能正常工作。
因此,本发明的第一个目的在于提供一种为离线客户的请示提供响应的装置。
本发明的第二个目的在于提供一种为离线客户的请求提供响应的方法。
本发明的第三个目的在于提供一种记录有为离线客户的请求提供响应的程序的计算机可读的程序记录媒体。
为实现上述第一个目的,本发明提供一种为离线客户的请求提供响应的装置,其特征在于包括:
一个请求-响应存储器(703),设置在客户机中,在其中存储了多个请求和多个响应;
一个网络流重定向器(701),用于在客户处于离线状态时,通过修改客户机的系统设置,将客户请求从网络连接重定向到客户机本身,以及用于在客户结束离线状态并且进入在线状态时,通过恢复客户机的系统设置,将客户请求从客户机本身重定向到网络连接;以及
一个离线服务器(702),设置在客户机中,用于接收由所述网络流重定向器(701)重定向到客户机本身的客户请求、根据收到的请求以及所述请求-响应存储器(703)中存储的多个请求和多个响应构造一个响应并将所述响应作为服务器响应返回给客户。
为实现上述第二个目的,本发明提供一种为离线客户的请求提供响应的方法,其特征在于包括以下步骤:
(a)在客户机中设置一个请求-响应存储器,在其中存储了多个请求和多个响应;
(b)在客户进入离线状态时,通过修改客户机的系统设置,将客户请求从网络连接重定向到客户机本身;以及
(c)在客户处于离线状态时,在客户机的本地重复执行以下步骤:
(c1)接收被重定向到客户机本身的请求,
(c2)根据所述请求以及所述请求-响应存储器中存储的多个请求和多个响应构造一个响应,以及
(c3)将所述响应作为服务器响应返回给客户。
为实现上述第三个目的,本发明提供一种计算机可读的程序记录媒体,该媒体上记录了用于执行以下步骤的程序:
在判断出客户进入离线状态时,修改客户机的系统设置,使得客户请求由网络连接重定向到客户机本身;以及
在客户处于离线状态时,在客户机的本地重复执行以下步骤:
(c1)接收被重定向到客户机本身的请求,
(c2)根据所述请求以及位于客户机中的请求-响应存储器中存储的多个请求和多个响应构造一个响应,以及
(c3)将所述响应作为服务器响应返回给客户。
根据本发明的方法和装置,不必修改客户软件,只需对客户机的系统设置稍做修改,即可使客户在离线状态下亦能正常工作,增加了客户机的移动性。服务器端和客户端再不必为离线状态而困挠。特别是对于个人数字助理(PDA)版本的客户软件,由于不必对原本就已经十分复杂的PDA客户软件进行任何修改,就可使其离线工作,所以极大地提高了PDA装置的移动性。另外,由于客户软件未做任何改动,所以无论在在线状态还是在离线状态,用户所使用的操作界面都是相同的,从而不必对用户进行另外的培训。
通过结合附图对本发明较佳实施方式的详细描述,本发明的上述特征和优点将会更加明显。其中
图1示出能够在其中实现本发明的数据处理系统;
图2示出可以包括在图1的数据处理系统20中的各部件的高层框图;
图3示出能够实现本发明的掌上数据处理系统;
图4示出根据本发明最佳实施方式的客户/服务器体系;
图5以更详细的框图示出了根据本发明最佳实施方式的客户/服务器体系;
图6示出可根据本发明的最佳实施方式实现的计算机网络;
图7示出根据本发明为离线客户请求提供响应的装置的详细框图;
图8示出在客户处于离线状态工作时本发明的方法的基本流程图;
图9示出在客户结束离线状态并且进入在线状态时本发明的方法的流程图;
图10举例示出一个保险公司的内联网页的相互关系;
图11示出浏览器在离线状态下工作时可得到适当响应的举例。
在以下描述中,将给出多个特定细节。然而,对于本领域内普通技术人员而言,显然可以不利用这样的特定细节来实现本发明。在其他情况下,公知的部件或者电路只用框图形式给出,以便不使本发明埋没于不必要的细节之中。在多数情况下,与时序考虑等有关的细节都被省去,只要这样的细节对于完全理解本发明是不必要的,并且属于相关技术领域普通技术人员的常识。
现在参照图1,示出能够在其中实现本发明的数据处理系统。数据处理系统20包括处理器22、键盘82和显示器96。键盘82由电缆连接到处理器22。显示器96包括显示屏幕30,可以采用阴极射线管(CRT)、液晶显示器(LCD)、电极照明板等实现。数据处理系统20还包括指点装置84,它可以采用跟踪球、游戏杆、触感板或屏或如图所示的鼠标实现。指点装置84可被用来移动显示屏幕30上的箭头或光标。处理器22还可以连接到一个或多个外围设备,比如调制解调器92、CD-ROM78、网络适配器90和软盘驱动器40,每个外围设备相对于处理器22的外壳可以是内置或外置的。可将象打印机100这样的输出设备连接到处理器22。
本领域内的普通技术人员应该认识到,显示器96、键盘82和指点装置84每个都可以利用几个公知的现有部件实现。
现在参照图2,所示的高层框图示出根据本发明的教导可以包括在图1的数据处理系统20中的部件。该数据处理系统20主要由计算机可读的指令控制,计算机可读的指令可以采用软件的形式,而不管在哪里或利用什么手段存储或访问这种软件。这种软件可以在中央处理部件(CPU)50中执行,使得数据处理系统20工作。
与系统总线5连接的存储装置包括随机存取存储器(RAM)56,只读存储器(ROM)58,和非易失性存储器60。这种存储器包括允许存储和获取信息的电路。ROM含有不能够修改的存储数据。存储在RAM中的数据可以由CPU 50或其他硬件设备改变。非易失性存储器60是当掉电时不失去数据的存储器。非易失性存储器包括ROM、EPROM、快闪存储器或电池后备的CMOS RAM。如图2所示,这种电池后备CMOS RAM可以用来存储系统配置信息。
扩展卡或板是包括芯片或其他电子部件的电路板,被连接起来向计算机增加功能或资源。一般地,可用扩展卡增加存储器、磁盘驱动控制器66、视频支持、并行和串行口以及内置调制解调器。对于膝上计算机、掌上计算机或者其他便携计算机,扩展卡一般采取PC卡的形式,它们是信用卡大小的装置,被设计为插入到计算机侧面或背面的槽中。这种槽的一个例子是PCMCIA槽(个人计算机存储卡国际协会),定义了第1、2和3型卡槽。这样,可以采用空槽68接收各种类型的扩展卡或PCMCIA卡。
磁盘控制器66和软盘控制器70两者都包括专用集成电路和相关的电路,它们分别指导和控制从和向硬盘驱动器72以及软盘74读或写数据。这种磁盘控制器处理这样的任务,比如定位读/写头、在驱动器和CPU50之间仲裁、以及控制向和从存储器传送信息。单个磁盘控制器能够控制一个以上的磁盘驱动器。
CD-ROM控制器76可以包括在数据处理系统20中,用于从CD-ROM(小型光盘只读存储器)78读数据。这种CD-ROM采用激光光学器件而不是磁装置来读数据。
键盘鼠标控制器80设置在数据处理系统20中,用于与键盘82和指点装置84进行接口。这种指点装置一般用于控制一个屏上元件,比如一个光标,可以采用箭头的形状,它有一个热点,在用户按鼠标按键时指定指点器的位置。其他的指点装置包括图形输入板、指示笔、光笔、激戏杆、跟踪球、轨迹板和由IBM公司以“TrackPoint”商标出售的指点装置。
数据处理系统20与其他数据处理系统之间的通信可以由都与系统总线5连接的串口控制器88和网络适配器90简化。串口控制器88用于在计算机之间、计算机与外围设备之间传送信息,在单条线路上一次一位地传输。串行通信可以是同步的(由某些标准比如时钟控制)或是异步的(通过交换对信息流进行控制的控制信号来管理)。串行通信标准的例子包括RS-232接口和RS-422接口。如图所示,这种串行接口可以用于与调制解调器92通信。调制解调器是一种使得计算机能够在标准电话线上传送信息的通信装置。调制解调器92将数字计算机信号转换为适于在电话线上传输的内部时钟信号。调制解调器92可以用来将数据处理系统20连接到一个在线信息服务机构,比如由IBM和Sears以服务商标“PRODIGY”提供的信息服务机构。这种在线服务提供商可以提供经调制解调器92下载到数据处理系统20的软件。调制解调器92可以提供与比如服务器、电子公告板、因特网或万维网这样的软件资源的连接。
网络适配器90可以用来将数据处理系统20连接到局域网94。网络94可以向计算机用户提供以电子方式通信和传送软件和信息的装置。另外,网络94可以提供分布式处理,在执行一个任务时它采用几台计算机共享负载或协作。
由显示控制器98所控制的显示器96用于显示数据处理系统20所产生的视频输出。这种视频输出可以包括文本、图形、动画和影象。显示器96可以利用基于CRT的视频显示器、基于LCD的平板显示器或者基于气体等离子体的平板显示器实现。显示控制器98是用于产生发送至显示器96的视频信号的电子部件。
打印机100可以经过并口控制器102连接到数据处理系统20。打印机100用于将文本或计算机产生的图象放置到纸张或者另一介质上,比如透明胶片。其他类型的打印机可以包括图象设置器、绘图仪或者胶片记录器等。
并口控制器102用来在系统总线5与另一并行通信装置(比如打印机100)之间连接的线路上同时发送多种数据和控制位。
CPU50读取、解码和执行指令,并且经过计算机主数据传送通路(即系统总线5)向和从其他资源传送信息。这种总线连接数据处理系统20中的各个部件,并且限定数据交换的媒体。系统总线5将存储部件56、58、60和CPU 50以及其他设备连接在一起,如图2所示,并且允许在它们之间交换数据。
现在参照图3,示出能够实现本发明的掌上数据处理系统300。掌上数据处理系统300的前面板上具有显示屏幕301、手写区域302、滚动按钮303,应用程序按钮304。显示屏幕1用于显示掌上数据处理系统300中所存储的信息,并且是触感式的,能够感应用户用笔在屏幕上的点击。显示屏幕301也能够显示用户在使用应用程序时的控制和设定信息。手写区域302是用户用笔书写文本的区域。滚动按钮30用于观看超出显示屏幕301之外的文本或其他信息,包括下滚按钮和上滚按钮。应用程序按钮304用于激活各个应用程序,每个按钮具有一个特定的图标,与其应用程序相对应。掌上数据处理系统300例如可以是可从IBM公司购得的WorkPad,可从3COM公司购得的PalmPilot等。在IBM WorkPad的前面板上具有四个应用程序按钮,分别对应于记事本、通讯录、任务表和备忘录。可以重新指定应用程序按钮304,来激活WorkPad中所存储的任何应用程序。另外可为掌上数据处理系统300随机提供一支专用的笔(未示出),用于点击显示屏幕301或者在手写区域302上书写。
掌上数据处理系统300的高层框图与图2所示类似,所不同的是省略了图2中所示的某些部件,以满足掌上数据处理系统的小巧和轻便的特性。在掌上数据处理系统300中不具有象磁盘这样的大容量外存设备,而一般只设置一个存储器模块作为内存。目前的掌上数据处理系统300的总内存空间一般小于1M。虽然可以使用PCMCIA卡对内存进行扩充,但是扩充后的容量一般也只有几兆。在IBM WorkPad中,存储空间分为ROM和RAM,位于同一个存储器模块中。ROM容量为0.5至1.5MB,RAM最小容量为1M。在ROM中预先置入PalmOS的主要应用程序组。其他的或者替换的应用程序和系统扩充可以装载到RAM中,但是受RAM存储容量的限制,这并非始终是实际可行的。可以通过更换ROM对软件进行升级或提高。也可以通过安装单个存储器模块来完全更换整个系统软件和应用程序组。另外,在掌上数据处理系统300中,一般内置了较强的网络通信能力,可以与因特网或万维网取得连接。
现在参照图4,图中示出根据本发明最佳实施方式的客户/服务器体系。图4中,客户请求(比如对新闻的请求)91由客户92发送到服务器88。服务器88可以是在因特网或者其他通信网络上能够访问的远程计算机系统。客户92可以在图1所示的计算机20或者图3所示的掌上计算机300中运行。
服务器88根据客户请求,扫描和搜索原始(比如未压缩的)信息(比如在线新闻或新闻组),将过滤的电子信息作为服务器响应93提供给客户92。
客户92可以在第一计算机中活动,服务器过程可以在第二计算机系统中活动,经过通信媒体相互通信,从而提供分布式功能并允许多个客户利用服务器的信息收集能力。
在万维网的环境下,客户机内运行的浏览器进程建立与服务器的连接并且向用户提供信息。服务器内运行相应的服务器软件,该软件把信息以HTTP响应的形式提供给客户机。HTTP响应对应于由HTML语言构成的Web页,或者其他服务器产生的数据。
在客户机中运行与HTML兼容的浏览器时,利用URL来定义链接。客户机请求由链接所标识的服务器,并且从服务器接收HTML格式的文件。
本发明中可以采用任何数目的市场上可获得的浏览器。例如,可以是网景公司的Navigator、Communicator、微软公司的IE,从伊利诺伊州Urbana-Champaign市的国家超计算应用中心(NCSA)获得的Mosaic牌浏览器,或是Lynx牌浏览器。任何其他的可提供HTTP所规定的功能的浏览器都可以使用。
因特网服务一般通过指定唯一的网址(即统一资源定位符-URL)受到访问,该统一资源定位符(URL)表示到达服务器的网络路径,其中URL具有定义网络连接的特定句法。统一资源定位符分为两个基本部分,即所使用的协议和对象路径名。例如,统一资源定位符地址“http://www.uspto.gov”(美国专利商标局的主页),规定了超文本传输协议“http”和域名“www.uspto.gov”。域名与唯一的数字值(TCP/IP地址)相关联。
现在参照图5,以更详细的框图示出了根据本发明最佳实施方式的客户/服务器体系。客户92利用网络连接814与服务器88连接。为了直观起见,网络连接814为因特网、内联网或者其他公知的互连。就因特网而言,服务器88为客户92可以访问的众多服务器之一,其中标号92表示一个客户,它是运行在某台客户机上的进程,比如可以是Web浏览器、邮件阅读器、FTP(文件传输协议)客户端软件、Telnet(远程登录)客户端软件等等。
客户机可以是台式机、笔记本计算机、手持或者掌上计算机等。例如,客户机可以是在OS/2操作系统下运行的IBM或IBM兼容机、IBMThinkPad笔记本计算机,运行Windows3.1或更高版本的操作系统的其他x86或基于奔腾系列芯片的计算机,也可以是运行PalmOS操作系统的IBM WorkPad掌上计算机,或者是运行Windows CE操作系统的其他掌上型计算机,也可以是具有网络通信能力的个人数字助理(PDA)。
典型的服务器包括一台IBM RISC/6000计算机(基于所谓的RISC工作站的精简指令集),运行AIX(先进交互式执行程序版本4.1或更高)操作系统和服务器程序。通常利用拨号计算机网络,服务器从客户机接收请求,以便获得客户所请求的文件或对象,或者执行所请求的任务。在IBM公司的许多出版物中说明了基于RISC的计算机的各种型号,如《RS/6000、7013和7016 POWERstation和POWERserver硬件技术参考手册》(定购号SA23-2644-00)。在IBM公司1985年11月出版《AIX操作系统技术参考手册》第一版以及其他出版物中说明了AIX操作系统。尽管以上所述是实际可用的,但是也可以采用任何其他适宜的硬件/操作系统/服务器组合。
现在参照图6,图中示出计算机网络80,它可根据本发明的最佳实施方式实现。计算机网络80代表因特网,可以描述为根据这里所述的客户/服务器体系的公知计算机网络。当然,本领域内熟练的技术人员应认识到因特网不仅仅是根据本发明最佳实施方式采用的分布式计算机网络。也可以采用其他分布式计算机网络来实现计算机网络80,比如本领域内公知的所谓“内联网”。
理论上,因特网是包括服务器88的一个大网络,这些服务器可由客户机,一般是个人计算机的用户,通过某些专用因特网接入提供商84(比如Internet America)或者在线服务提供商(比如America On-Line、Prodigy、Compuserve等等)来访问。每个客户机上可以运行浏览器(一个客户)以经过接入提供商访问服务器88。每个服务器88操作所谓的“Web站点”。
由于本发明涉及及网络传输,故对网络及其操作原理的理解会是有帮助的。在这里并不过分深入地描述本发适用的网络的细节。例如,本发明可用于象因特网这样的全球性网络。
现在参照图7,图中示出根据本发明的为离线客户请求提供响应的装置的详细框图。图7中的客户92和服务器88与图4和图5中所示相同,网络连接814与图5中所示相同,这里不再重复。
图7中最基本的部件是网络流重定向器701、离线服务器702和请求-响应存储器703。由它们三者即可构成本发明最基本的装置。网络流重定向器701能起到以下作用。当客户92处于在线状态工作时,比如用户正在利用浏览器浏览服务器88上的网页时,网络流重定向器701对客户92与服务器88之间的数据传输不做任何改变。也就是说,客户92发往服务器88的请求仍然通过网络连接814传送到服务器88,而服务器88收到客户请求后,完成客户所请求的任务后将适当的响应通过网络连接814返回给客户92。当客户92处于离线状态工作时,即不存在或不能取得网络连接814的情况下,网络流重定向器701将把客户92的请求重定向到位于客户机本地的离线服务器702,然后离线服务器702对此请求作出适当的响应(将在后文描述)。
网络流重定向器701的上述功能,可以通过修改客户机的系统设置来实现。如在前文所述,统一资源定位符URL地址中规定了网络传输协议和域名。例如,URL“http://www.ibm.com”指明域名为“www.ibm.com”。域名与唯一的IP地址相关联。因特网中的所有数据传输都是根据IP地址进行的。因此,客户指定一个域名后,要由网络机制转换为相应的IP地址。目前的因特网中,这一转换过程是由域名服务器进行的。因此,网络流重定向器701所做的工作只是将客户所请求的域名转换为客户机本身的IP地址,或将其恢复为原来的IP地址。
而这种IP地址转换过程又可由以下简单的文件操作来完成。根据TCP/IP协议,操作系统得到URL中所含的域名后,首先在本地的文件系统中搜寻“HOSTS”文件。例如,在Windows NT操作系统中,“HOSTS”文件存储在:“\NT\system32\drivers\etc\”目录中,在UNIX操作系统中,该文件存储在“\etc\”目录中,在Windows 95操作系统中,该文件存储在“\Windows\”目录中。在该文件中可以含有域名到IP地址的转换表。每个转换表项是单独的一行。每行中,IP地址放在第一列,其后跟随相应的域名。IP地址与域名之间至少由一个空格分离。例如,在“HOSTS”文件中,可包括这样的内容:
102.54.94.97    rhino.acme.com
38.25.63.10     x.acme.com其中,包括了两个域名及其相应的IP地址。
在目前的因特网技术中,由于域名可由域名服务器转换为IP地址,所以客户机中的“HOSTS”文件一般为空,或者根本不存在。
本发明中,只需要在“HOSTS”文件中加入适当的几行,即可由操作系统将所请求的域名转换为本机的IP地址。
例如,假设本机的IP地址为“127.0.0.1”,则例如可以在“HOSTS”文件中加入以下内容:
127.0.0.1    www.ibm.com
127.0.0.1    www.uspto.gov则客户发出的所有到“www.ibm.com”或者“www.uspto.gov”的请求都被重定向到客户机本地。
当恢复客户机的系统设置时,只需简单地清空“HOSTS”文件的内容,则客户发出的所有到“www.ibm.com”或者“www.uspto.gov”的请求都自动地转到由域名服务器获得的相应IP地址。
正是由于在客户92处于离线状态时,网络流重定向器701能够将客户请示重定向到离线服务器702,并将离线服务器702的响应返回给客户92,所以才使客户92能够继续工作,就好象客户92处于在线状态下工作一样。
请求-响应存储器703中预先存储了多个请求和与这些请求相对应的多个响应。这些请求和响应可以是由用户事先定义的,也可以通过本发明提供的以下方法自动记录下来。
在客户92处于在线状态工作时,由用户设定一种请求捕获状态。在请求捕获状态下,网络流重定向器701可以始终将客户请求重定向到离线服务器702。一旦客户92发出请求,离线服务器702即可捕获该请求。然后,离线服务器702通过网络连接814将该请求发送到服务器88,并且接收服务器88返回的响应(如图7中虚线所示)。然后,离线服务器702将收到的服务器响应返回给网络流重定向器701。与此同时,离线服务器702将捕获的客户请求和收到的服务器响应按照一定的数据格式存储在请求-响应存储器703中。这里所述的数据格式不构成对本发明的限制。只要是在以后的处理中便于离线服务器702根据收到的请求以及在请求-响应存储器703中存储的多个请求和多个响应构造一个响应,就可以采用任何数据格式。网络流重定向器701收到离线服务器返回的响应之后,将该响应返回给客户92。重复上述处理过程,直到用户指定结束请求捕获状态。因此,在请求-响应存储器703中存储了多个请求和与之相对应的多个响应。
根据网络传输所采用的协议的不同,比如可以采用HTTP(超文本传输协议)、FTP(文件传输协议)、TELNET(远程登录)等等,请求和响应的数据内容是不同的。由于这些都属于本领域内熟练的技术人员的常识,故在此不必详述。
在客户92处于在线状态工作时,客户发送的每个请求经过网络连接814传送到服务器88,并且经过同一网络连接接收服务器88返回的响应。如前所述,在客户92处于离线状态工作时,或者在用户指定的请求捕获状态时,这些请求被网络流重定向器701重定向到离线服务器702,而这些响应由离线服务器702发送到网络流重定向器701,并且进而返回给客户92。
以上描述了产生请求-响应存储器703中的多个请求和多个响应的方法,即通过用户定义,或者在用户指定的请求捕获状态中由离线服务器702捕获。但是,可以理解的是,用户可以对按照上述方法产生的请求和响应进行适当编辑和修改,并且可以针对某些请求定义一些默认响应,以模拟实际情况。另外,在一个客户机上构成了请求-响应存储器703的存储内容之后,可以简单地将该请求-响应存储器703的内容拷贝到其他客户机中的请求-响应存储器中,从而免去了以上的定义、捕获、编辑的过程。
另外,本领域内熟练的技术人员应该理解到,本文中所述的存储器可以是单独的任何形式的存储器,也可以是客户机中已有存储器中的一部分存储区。例如,可以是位于图2所示的磁盘驱动器72中的数据库、文件,或者是位于图2所示的RAM 56中的存储区。在客户机为图3所示的掌上计算机的情况下,本文中所述的存储器可能是位于掌上计算机中所安装的存储卡上。
离线服务器702在客户92处于离线状态时开始工作。首先,离线服务器702接收由网络流重定向器701重定向到客户机本地的客户请求。然后,离线服务器702根据收到的客户请求以及在请求-响应存储器703中存储的多个请求和多个响应构造一个与所收到的客户请求相应的响应。
现在简要说明离线服务器702如何根据收到的请求以及在请求-响应存储器703中存储的多个请求和多个响应构造一个响应。
假设请求-响应存储器703中已经存储了以下多个请求和多个响应:
R1(请求1)
S1(响应1)
R2(请求2)
S2(响应2)
  …
Rn(请求n)
Sn(响应n)。
又假设离线服务器702刚刚收到一个请求R,则离线服务器702根据公式(1)构造一个响应S:
S=f(R,R1,R2,...,Rn,S1,S2,...,Sn)      公式(1)
作为公式(1)的一种特例,响应S可以是响应S1至Sn中一员,按照公式(2)从响应S1至Sn中进行选择:
根据所采用的网络传输协议的不同,上式中的“逻辑等于”的运算方式也不尽相同。
以HTTP为例,假设R1的内容为:
GET URL1
DATE 99.01.01/HTTP
刚刚收到的请求R的内容为:
GET URL1
DATE 99.01.10/HTTP
显然,R1与R的数据内容是不相同的,但是实质部分是相同的,即都存在“GET URL1”,即都是请求URL1所标识的网络资源。所以应以相同的响应来回复。因此,离线服务器702判断为“R逻辑等于R1”,所以构造一个响应S,使其等于请求-响应存储器703中存储的S1。
值得说明的是,以上请求R1和R的数据内容只是示意性的,实际的数据内容会有所差别。但是这些差别并不构成对本发明的限制。
作为公式(1)更一般的情况,可以根据请求R、请求R1至Rn以及响应S1至Sn构造一个响应S。
在此仅举一个简单的例子。假设R1的内容为:
http://search.yahoo.com/bin/search?p=game
R的内容为:
http://search.yahoo.com/bin/search?p=Internet
虽然R1与R逻辑相等,但是两个URL中包含的参数不同,所以不能将S1作为响应S。此时,可以构造一个包括如下内容的响应S:
“对不起,本地数据不足,不能搜索‘Internet”
根据本发明,可以利用各种复杂的算法对离线服务器702进行编程,使它能够根据收到的请求R以及存储在请求-响应存储器703中的多个请求和多个响应构造出一个适当的响应S。各种不同的算法并不构成对本发明的限制。
在本发明的装置中,除了如上所述的最基本部件:网络流重定向器701、离线服务器702和请求-响应存储器703之外,本发明的装置还可以包括一个离线请求存储器705和一个实际网络服务装置706,它们都位于客户机中。在客户92处于离线状态工作时,离线服务器702一旦收到客户请求,除了根据该请求以及在请求-响应存储器703中存储的多个请求和多个响应构造一个响应之外,还将该请求接时间顺序存储到离线请求存储器705中。在客户结束离线状态后,离线请求存储器705中存储了客户92在离线状态下发送的所有请求。在客户92进入在线状态工作之后,实际网络服务装置706开始工作,它按照时间顺序依次从离线请求存储器705中取出一个请求,然后通过网络连接814发送到服务器88,由服务器88实际完成客户92曾经请求完成的工作。
更好的是,本发明的装置中还可以包括一个离线响应存储器704、一个比较装置707和一个通知装置708,它们都位于客户机中。在客户92处于离线状态工作时,离线服务器702在向网络流重定向器701返回一个响应之后,还将该响应接时间顺序存储到离线响应存储器704中。这样,离线响应存储器704中存储的响应是与离线请求存储器705中存储的请求相对应的。当然,本领域内熟练的技术人员应该理解到,离线请求存储器705和离线响应存储器704可以是单独的存储器或存储区,也可以是位于同一个存储器或存储区中,只要能够保证请求与响应之间的相关联的关系即可。这些小的差别不构成对本发明的限制。在客户结束离线状态后,不但离线请求存储器705中存储了客户92在离线状态下发送的所有请求,而且离线响应存储器704中存储了离线服务器702向客户92发送的所有响应。在客户92进入在线状态工作之后,实际网络服务装置706开始工作,它按照时间顺序依次从离线请求存储器705中取出一个请求,然后通过网络连接814发送到服务器88,由服务器88实际完成客户92曾经请求完成的工作。然后,通过网络连接814接收服务器88返回的响应,将该响应送到比较装置707。比较装置707对该响应与存储在离线响应存储器704中的与所发送的请求相关联的响应进行比较。如果比较结果指示存在逻辑错误,则启动通知装置708向用户报告这种错误。一种可能的方式是调用客户服务软件。实际网络服务装置706一直重复上述过程,直到离线请求存储器705中的请求都被检索出。
作为上述由比较装置707执行的比较运算的例子,可以对两个响应的状态码进行比较。假设将离线请求存储器705中的请求R1’发送到服务器88之后,实际网络服务装置706收到的响应S为:
S<HTTP 1.0 302 Object Not Found而在离线响应存储器704中存储的与请求R1’相关联的响应为S1’:
S1’<HTTP 1.0 200 OK比较装置707对响应S和S1’的状态码进行比较,发现它们的状态码不相等,则说明存在逻辑错误。也就是说,曾经向客户返回的响应S1’是错误的。于是,比较装置707启动通知装置708向用户报告这一逻辑错误。
当然,在实际应用中,还可能有其他的比较方法。但是这些小的差别不构成对本发明的限制。
现在参照图8,图中示出在客户处于离线状态工作时,本发明的方法的基本流程图。在步骤800开始之后,本发明的方法首先在步骤801判断客户是否进入离线状态?如果客户未进入离线状态,则不工作,或者转到图9所示的流程图。如果在步骤801判断出客户进入离线状态,则过程进行到步骤802。在步骤802,修改客户机的系统设置,使得客户请求被从网络连接重定向到客户机本地。修改客户机系统设置的方法如前文参照图7所述,可以仅是修改客户机中存储的“HOSTS”文件。在此,不再赘述。
步骤803,接收客户发送的一个请求。然后,步骤804将该请求存储到离线请求存储器中。步骤805,根据收到的请求以及在请求-响应存储器中存储的多个请求和多个响应构造一个响应。这里,离线请求存储器、请求-响应存储器以及根据收到的请求以及在请求-响应存储器中存储的多个请求和多个响应构造一个响应的方法都如前文参照图7所述。
然后,步骤806,将在步骤805构造的一个响应返回给客户,并且在步骤807将该响应存储到离线响应存储器。这里的离线响应存储器如前文参照图7所述。
接着,在步骤808判断客户是否结束离线状态。如果步骤808的判断为否,则处理转到步骤803,继续工作;否则,结束工作,或者转到图9所示的流程图。
这里值得说明的是,图中所示的有些步骤的执行顺序是可以改变的。例如,步骤804可以在步骤805之后、或者在步骤806之后、或者在步骤807之后执行,而不必紧接在步骤803之后执行。又比如,步骤807也可以在步骤806之前执行。这些细微的差别不构成对本发明的限制。另外,如果后文不利用离线响应存储器中的内容,也可以省略步骤807。
另外,离线请求存储器和离线响应存储器可以是单独的存储器或存储区,也可以是位于同一个存储器或存储区中,只要能够保证请求与响应之间的相关联的关系即可。这些小的差别不构成对本发明的限制。
现在参照图9,示出在客户结束离线状态并且进入在线状态时本发明的方法的流程图。在步骤901,判断客户是否进入在线状态,如果为否,则转到步骤910,处理结束。如果步骤901的判断为是,则转到步骤902。步骤902修改客户机的系统设置,使得客户请求被从客户机本地重定向到网络连接。修改客户机系统设置的方法如前文对步骤802所述,不再赘述。
步骤903判断离线请求存储器中是否存在仍未被检索的请求。如果步骤903判断结果为否,则处理进行到步骤910,处理结束;否则进行到步骤904。步骤904,从离线请求存储器中检索出一个请求。步骤905,通过网络连接将该请求发送到服务器,由服务器实际完成客户曾经请求过的任务。步骤906,通过网络连接接收服务器应该返回的一个响应。然后,在步骤907对服务器返回的这个响应与刚刚向服务器发送的那个请求相关联的响应(曾在前述图8的步骤807中存储到离线响应存储器中)进行比较。步骤908,判断步骤907所进行的比较运算的结果是否指示存在逻辑错误。这里所述的逻辑错误,与前文参照图7对比较装置707的描述中所述的逻辑错误具有相同的含义。如果步骤908的判断结果为否,说明在图8的步骤806中向客户返回的响应是正确的,则处理转到步骤903;否则,处理进行到步骤909。在步骤909,通过适当方式向用户通知该逻辑错误,并且由用户采取适当措施对所发送的请求进行修改。步骤909中所采用的一种可能的方式是调用客户服务软件。然后可以重新向服务器发送修改后的请求。步骤909之后,处理返回到步骤903。
现在参照图10,举例示出一个保险公司的内联网页的相互关系。当该保险公司的业务员利用客户即浏览器(比如是网景公司的Communicator或者是微软公司的IE)访问该保险公司的网址时,浏览器向服务器发送GET HTTP请求。该公司的服务器收到请求后向浏览器返回以HTML(超文本标记语言)格式书写的主页面描述文件。浏览器收到这个HTML文件后,根据文件中所含的HTML标记,按照这些标记所规定的格式,在客户机的显示屏幕上显示HTML文件中所含的其他数据。业务员看到的即是该保险公司的内联网主页1000。该主页1000中存在两个热链接,分别对应两个选项:1.销售保险;2.赔偿。
当业务员点击第一热链接(即用鼠标点击“1.销售保险”)后,浏览器从主页文件中获得第一个热连接的URL,形成另一个请求,将该请求送到服务器。服务器收到该请求后,根据请求中指定的URL,形成另一个响应,即以HTML格式书写的另一页面描述文件,返回给浏览器。浏览器收到该另一个响应,在客户机的显示屏幕上显示文件的数据,业务员看到的即是销售表格1001。在销售表格1001中,有三个空白1001A、1001B和1001C,业务员在销售保险时需要在这三个空白中填写顾客的适当数据,以完成保险的销售。如同本领域内熟练的技术人员所知,三个空白1001A、1001B和1001C中填写的数据分别作为三个参数存储在一个URL中。这里所述的三个空白只是举例而已,空白的具体数目与保险销售业务所需的顾客数据项目有关。这一点不构成对本发明的限制。
页面1001中包括两个热连接,分别对应“OK”和“取消”。如果业务员在页面1001中点击“OK”,浏览器将包括上述三个参数的URL的请求发送给服务器,服务器处理正确无误后,返回另一个HTTP响应,浏览器相应地显示“销售成功”页面1003。如果业务员在页面1001中点击“取消”,则浏览器显示“销售取消”页面1004。
类似地,当业务员在内联网主页1000中点击第二热连接(即用鼠标点击“2.赔偿”)时,浏览器显示从服务器获得的赔偿表格1002。其中也含有三个参数。如果业务员在页面1002中点击“OK”后,浏览器将向服务器发送含有三个参数数据的URL的请求。服务器处理正确无误后,返回“赔偿成功”页面1005。如果业务员在页面1002中点击“取消”,则浏览器显示“赔偿取消”页面1006。
在这一例子中,由于采用的网络传输协议是HTTP,所以在浏览器与服务器之间传送的请求和响应符合HTTP规定的格式。
假设该保险公司的某个业务员希望访问三个顾客,向其中的两位顾客销售保险,并向另一位顾客赔偿。可以采用的第一种作法是,将这三位顾客请到保险公司来,由该业务员利用位于公司内部的客户机访问公司的内联网主页,填写上述表格1001和1002,完成这些业务。但是这种将顾客请进来的作法是不现实的。第二种作法是,由业务员携带安装有浏览器的笔记本计算机或者掌上计算机外出拜访上述三位顾客。在拜访每一位顾客时,利用笔记本计算机或者掌上计算机通过拨号网络取得与保险公司服务器的连接,获得相应表格,填写所需数据,由服务器完成相应的销售或赔偿业务。由于不能保证在任何时候都能取得网络连接,并且考虑到因特网慢的传输速度以及网络传输的安全性问题,所以第二种方法也有其不利之处。
如果采用本发明,即可克服上述诸多不便。比如,在该业务员外出拜上述这三位顾客之前,将其笔记本计算机或者掌上计算机连接到公司的服务器上,然后指定进入一种如前文所述的请求捕获状态。如前文所述,在请求捕获状态下,业务员利用浏览器分别访问一遍内联网主页1000、销售表格1001、销售成功1003、销售取消1004、赔偿表格1002、赔偿成功1005和赔偿取消1006。在完成这一过程之后,在该业务员的笔记本计算机或者掌上计算机中所安装的请求-响应存储器中就已经存储了在其外出期间需要向保险公司的服务器发送的各种请求以及相应的响应。
当然,请求-响应存储器的数据内容也可以由保险公司的计算机技术人员预先定义和编辑。在每位业务员外出办理业务之前,将制定好的数据内容拷贝到业务员的笔记本计算机中的请求-响应存储器中,或者将适当的存储卡安装到其掌上计算机中。
这样,在外出期间,可以不建立与公司服务器的网络连接,即客户离线工作,也能够获得与在线工作一样的效果。
现在参照图11,示出浏览器在离线状态下工作时可得到的响应的举例。
比如,在业务员拜访第一位顾客时,运行浏览器,根据本发明的方法或者装置,即可根据浏览器发送的请求以及在请求-响应存储器中存储的多个请求和多个响应构造一个相应的响应,浏览器获得该响应,显示内联网主页1100。因为业务员向第一位顾客销售保险,所以点击“1.销售保险”。浏览器同样可以获得一个根据浏览器请求以及在请求-响应存储器中存储的多个请求和多个响应构造的的响应,并且显示销售表格1101。业务员在空白1101A、1102B和1103C中填写第一位顾客的有关数据,然后点击“OK”。浏览器获得相应响应,显示销售成功1103。然后退出浏览器。在这一过程中,在业务员的笔记本计算机中所安装的离线请求存储器和离线响应存储器中存储了多个请求和多个响应。
与上述过程类似地,在业务员拜访第二位顾客之后,在离线请求存储器和离线响应存储器中增加了多个请求和多个响应。
在业务员拜访第三位顾客时,启动浏览器,显示内联网主页1100。因为要向第三位顾客赔偿,所以点击“2.赔偿”。浏览器获得一个根据浏览器请求以及在请求-响应存储器中存储的多个请求和多个响应构造的响应,并且显示赔偿表格1102。业务员填写顾客数据,然后点击“OK”。浏览器获得相应响应,显示赔偿成功1105。然后退出浏览器。在这一过程中,在业务员的笔记本计算机中所安装的离线请求存储器和离线响应存储器中又增加了多个请求和多个响应。
因此,按照本发明的方法或者装置,无论是对于业务员来讲还是对于顾客来讲,上述过程就如同浏览器在线工作一样。
在业务员返回保险公司之后,可以将其笔记本计算机通过内联网与服务器连接,根据本发明的方法或装置即可自动地将离线请求存储器中的多个请求分别发送到服务器,由服务器完成实际的任务,即两次销售和一次赔偿。当然,如前文所述,在一过程中,有可能向业务员报告存在的逻辑错误。比如,在销售保险时,顾客将其年龄误填为90岁,当时浏览器得到的响应是“销售成功”。而根据该保险公司的规定,对于年龄在90岁或90岁以上的人不提供保险,所以服务器在进行这项任务时,返回比如“年龄不能超过90岁”这样的响应。因此,出现逻辑错误,则将该逻辑错误通知给业务员,比如在浏览器窗口中显示“顾客年龄不得超过90岁”。然后,业务员可以向顾客核实或者修改错误的顾客数据,再次发送请求。
另外,可将本发明的方法实现为计算机程序,然后存储到计算机可读的程序记录媒体上。实际应用中,可将该程序安装到客户端软件所在的移动装置中,从而不必修改客户端软件,即可使客户端软件能够在离线状态下工作。这里所指的程序记录媒体可以包括各种形式,比如以磁的形式或者以光的形式。各种不同的形式不构成对本发明的限制。
虽然以上结合附图详细描述了本发明的最佳实施方式,但是对于本领域内熟练的技术人员而言,可以做出各种修改和变更,而不背离本发明的范围和实质。因此,本发明的范围仅由权利要求书限定。

Claims (15)

1.一种为离线客户的请求提供响应的装置,其特征在于包括:
一个请求-响应存储器(703),设置在客户机中,在其中存储了多个请求和多个响应;
一个网络流重定向器(701),用于在客户处于离线状态时,通过修改客户机的系统设置,将客户请求从网络连接重定向到客户机本身,以及用于在客户结束离线状态并且进入在线状态时,通过恢复客户机的系统设置,将客户请求从客户机本身重定向到网络连接;以及
一个离线服务器(702),设置在客户机中,用于接收由所述网络流重定向器(701)重定向到客户机本身的客户请求、根据收到的请求以及所述请求-响应存储器(703)中存储的多个请求和多个响应构造一个响应并将所述响应作为服务器响应返回给客户。
2.根据权利要求1的装置,其特征在于:所述请求-响应存储器中存储的多个请求和多个响应是在客户处于在线状态时在客户机中截获的多个客户请求和多个服务器响应。
3.根据权利要求1的装置,其特征在于:所述请求-响应存储器中存储的多个请求和多个响应是由用户预先定义的。
4.根据权利要求1至3中任一项的装置,其特征在于:所述离线服务器还包括一个离线请求存储器(705),用于存储所述离线服务器收到的每个客户请求;并且
所述装置还包括:
一个实际网络服务装置(706),设置在客户机中,用于在客户结束离线状态并且进入在线状态之后,通过网络连接向服务器发送所述离线请求存储器(705)中存储的每个请求。
5.根据权利要求4的装置,其特征在于:所述离线服务器还包括一个离线响应存储器(704),用于按照与所述离线请求存储器中的请求相关联的方式存储返回给客户的响应;并且
所述实际网络服务装置在向服务器发送每个请求之后还接收从服务器返回的每个响应;
所述装置还包括:
一个比较装置(707),用于对所述实际网络服务装置从服务器收到的响应与在所述离线响应存储器中存储的与发送的请求相关联的响应进行比较;以及
一个通知装置(708),用于在所述比较装置的比较结果指示存在逻辑错误时向用户通知该错误。
6.一种为离线客户的请求提供响应的方法,其特征在于包括以下步骤:
(a)在客户机中设置一个请求-响应存储器,在其中存储了多个请求和多个响应;
(b)在客户进入离线状态时,通过修改客户机的系统设置,将客户请求从网络连接重定向到客户机本身;以及
(c)在客户处于离线状态时,在客户机的本地重复执行以下步骤:
(c1)接收被重定向到客户机本身的请求,
(c2)根据所述请求以及所述请求-响应存储器中存储的多个请求和多个响应构造一个响应,以及
(c3)将所述响应作为服务器响应返回给客户。
7.根据权利要求6的方法,其特征在于所述步骤(a)中的多个请求和多个响应是通过在客户处于在线状态时重复执行以下步骤获得的:
截获客户向服务器发送的一个请求;
通过网络连接向服务器发送所述请求;
接收服务器返回的一个响应;
将所述响应返回给客户;以及
将所述请求和所述响应存储到所述请求-响应存储器中。
8.根据权利要求6的方法,其特征在于所述步骤(a)中的多个请求和多个响应是由用户预先定义的。
9.根据权利要求6至8中任一项的方法,其特征在于所述步骤(c1)还将收到的请求记录到位于客户机中的离线请求存储器中,并且
所述方法还包括步骤:
(d)在客户结束离线状态并且进入在线状态时,通过恢复客户机的系统设置,将客户请求从客户机本身重定向到网络连接;以及
(e)在客户机的本地重复执行以下步骤:
(e1)从所述离线请求存储器中检索出一个请求;以及
(e2)通过网络连接向服务器发送所述请求。
10.根据权利要求9的方法,其特征在于所述步骤(c3)还将向客户返回的响应按照与步骤(c1)中记录的请求相关联的方式记录到位于客户机中的离线响应存储器中,并且
所述步骤(e)还包括以下步骤:
(e3)接收从服务器返回的一个响应;
(e4)从所述离线响应存储器中检索出一个与在步骤(e1)检索的请求相关联的响应;
(e5)对在步骤(e3)收到的响应与在步骤(e4)检索出的响应进行比较;以及
(e6)如果比较结果指示存在逻辑错误,则向用户通知该逻辑错误。
11.一种计算机可读的程序记录媒体,该媒体上记录了用于执行以下步骤的程序:
在判断出客户进入离线状态时,修改客户机的系统设置,使得客户请求由网络连接重定向到客户机本身;以及
在客户处于离线状态时,在客户机的本地重复执行以下步骤:
(c1)接收被重定向到客户机本身的请求,
(c2)根据所述请求以及位于客户机中的请求-响应存储器中存储的多个请求和多个响应构造一个响应,以及
(c3)将所述响应作为服务器响应返回给客户。
12.根据权利要求11的计算机可读的程序记录媒体,其特征在于所述请求-响应存储器中存储的多个请求和多个响应是通过在客户处于在线状态时重复执行以下步骤获得的:
截获客户向服务器发送的一个请求;
通过网络连接向服务器发送所述请求;
接收服务器返回的一个响应;
将所述响应返回给客户;以及
将所述请求和所述响应存储到所述请求-响应存储器中。
13.根据权利要求11的计算机可读的程序记录媒体,其特征在于所述请求-响应存储器中存储的多个请求和多个响应是由用户预先定义的。
14.根据权利要求11至13中任一项的计算机可读的程序记录媒体,其特征在于所述步骤(c1)还将收到的请求记录到位于客户机中的离线请求存储器中,并且
所述媒体中记录的程序还执行以下步骤:
(d)在客户结束离线状态并且进入在线状态时,恢复客户机的系统设置,使得客户请求从客户机本身重定向到网络连接;以及
(e)在客户机的本地重复执行以下步骤:
(e1)从所述离线请求存储器中检索出一个请求;以及
(e2)通过网络连接向服务器发送所述请求。
15.根据权利要求14的计算机可读的程序记录媒体,其特征在于所述步骤(c3)还将向客户返回的响应按照与步骤(c1)中记录的请求相关联的方式记录到位于客户机中的离线响应存储器中,并且
所述步骤(e)还包括以下步骤:
(e3)接收从服务器返回的一个响应;
(e4)从所述离线响应存储器中检索出一个与在步骤(e1)检索的请求相关联的响应;
(e5)对在步骤(e3)收到的响应与在步骤(e4)检索出的响应进行比较;以及
(e6)如果比较结果指示存在逻辑错误,则向用户通知该逻辑错误。
CN99101605A 1999-01-28 1999-01-28 为离线客户请求提供响应的方法及装置 Expired - Fee Related CN1108578C (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN99101605A CN1108578C (zh) 1999-01-28 1999-01-28 为离线客户请求提供响应的方法及装置
TW088115951A TW526426B (en) 1999-01-28 1999-09-14 Systematic method and apparatus to make off-line web client works as if it is on-line
KR1020000001638A KR100362981B1 (ko) 1999-01-28 2000-01-14 오프라인 클라이언트의 요구에 대한 응답을 제공하는 방법및 장치
GB0001524A GB2350452B (en) 1999-01-28 2000-01-25 Method and apparatus for providing responses for requests of off-line clients
JP2000015232A JP3457605B2 (ja) 1999-01-28 2000-01-25 オフライン・クライアントの要求に対して応答を返す装置、方法および記憶媒体
US09/492,000 US6757706B1 (en) 1999-01-28 2000-01-26 Method and apparatus for providing responses for requests of off-line clients

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN99101605A CN1108578C (zh) 1999-01-28 1999-01-28 为离线客户请求提供响应的方法及装置

Publications (2)

Publication Number Publication Date
CN1262490A true CN1262490A (zh) 2000-08-09
CN1108578C CN1108578C (zh) 2003-05-14

Family

ID=5270558

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99101605A Expired - Fee Related CN1108578C (zh) 1999-01-28 1999-01-28 为离线客户请求提供响应的方法及装置

Country Status (6)

Country Link
US (1) US6757706B1 (zh)
JP (1) JP3457605B2 (zh)
KR (1) KR100362981B1 (zh)
CN (1) CN1108578C (zh)
GB (1) GB2350452B (zh)
TW (1) TW526426B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100377151C (zh) * 2005-03-11 2008-03-26 鸿富锦精密工业(深圳)有限公司 量测设备离线编程系统及方法
CN102542233A (zh) * 2012-02-22 2012-07-04 北京人本幸福科技文化有限公司 网络信息获取方法及智能终端
CN101741769B (zh) * 2008-11-25 2012-12-12 华为终端有限公司 一种网关和网页重定向的方法
CN103023901A (zh) * 2012-12-07 2013-04-03 北京网秦天下科技有限公司 移动终端的登录方法及登录系统
CN107517139A (zh) * 2016-06-17 2017-12-26 阿里巴巴集团控股有限公司 数据处理方法及系统、设备测试系统及节点测试系统
CN110971655A (zh) * 2018-10-01 2020-04-07 甲骨文国际公司 离线客户端重放和同步

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7505974B2 (en) * 1999-02-12 2009-03-17 Gropper Robert L Auto update utility for digital address books
US7089300B1 (en) * 1999-10-18 2006-08-08 Apple Computer, Inc. Method and apparatus for administering the operating system of a net-booted environment
US7380007B1 (en) * 2000-06-30 2008-05-27 Aol Llc, A Delaware Limited Liability Company Automatic user session
US20020138617A1 (en) * 2000-09-06 2002-09-26 Jacob Christfort Providing content from multiple services
US20020095528A1 (en) * 2000-09-29 2002-07-18 International Business Machines Corporation Method and system for operating a client in a client/server system
US7089281B1 (en) * 2000-12-08 2006-08-08 Sun Microsystems, Inc. Load balancing in a dynamic session redirector
US7788335B2 (en) * 2001-01-11 2010-08-31 F5 Networks, Inc. Aggregated opportunistic lock and aggregated implicit lock management for locking aggregated files in a switched file system
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
US7512673B2 (en) 2001-01-11 2009-03-31 Attune Systems, Inc. Rule based aggregation of files and transactions in a switched file system
US7509322B2 (en) 2001-01-11 2009-03-24 F5 Networks, Inc. Aggregated lock management for locking aggregated files in a switched file system
TW561358B (en) 2001-01-11 2003-11-11 Force Corp Z File switch and switched file system
US8239354B2 (en) 2005-03-03 2012-08-07 F5 Networks, Inc. System and method for managing small-size files in an aggregated file system
US8195760B2 (en) 2001-01-11 2012-06-05 F5 Networks, Inc. File aggregation in a switched file system
US7383288B2 (en) 2001-01-11 2008-06-03 Attune Systems, Inc. Metadata based file switch and switched file system
WO2002060154A1 (en) * 2001-01-25 2002-08-01 Abaco Pr, Inc. System and method for remote communication transactions
US20020161826A1 (en) * 2001-01-25 2002-10-31 Carlos Arteaga System and method for remote communication transactions
US20020178225A1 (en) * 2001-05-24 2002-11-28 M&G Enterprises Llc System and method for providing on-line extensions of off-line places and experiences
JP2003099361A (ja) * 2001-09-19 2003-04-04 Sanyo Electric Co Ltd ネットワーク端末装置
US7024405B2 (en) * 2002-07-18 2006-04-04 The United States Of America As Represented By The Secretary Of The Air Force Method and apparatus for improved internet searching
US7730155B1 (en) * 2002-10-01 2010-06-01 Apple Inc. Method and apparatus for dynamically locating resources
US7877511B1 (en) 2003-01-13 2011-01-25 F5 Networks, Inc. Method and apparatus for adaptive services networking
JP2004227080A (ja) * 2003-01-20 2004-08-12 Nec Corp 情報処理システム、携帯端末、及び、情報処理サーバ
US7363355B2 (en) * 2003-06-30 2008-04-22 Intel Corporation Transparent disconnected services discovery and use
US20060008256A1 (en) * 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
US20130097302A9 (en) * 2003-10-01 2013-04-18 Robert Khedouri Audio visual player apparatus and system and method of content distribution using the same
US7774774B1 (en) * 2003-10-22 2010-08-10 Apple Inc. Software setup system
JP4571937B2 (ja) * 2004-03-25 2010-10-27 ソフトバンクBb株式会社 アクセスシステム及びアクセス方法
US20050246649A1 (en) * 2004-04-29 2005-11-03 Wilhelm Gerita S Online/offline multimedia directory system
TWI255408B (en) * 2004-12-24 2006-05-21 Hon Hai Prec Ind Co Ltd System and method for client linking with server automatically
US7885970B2 (en) * 2005-01-20 2011-02-08 F5 Networks, Inc. Scalable system for partitioning and accessing metadata over multiple servers
US20060167838A1 (en) * 2005-01-21 2006-07-27 Z-Force Communications, Inc. File-based hybrid file storage scheme supporting multiple file switches
US7958347B1 (en) 2005-02-04 2011-06-07 F5 Networks, Inc. Methods and apparatus for implementing authentication
US8417746B1 (en) 2006-04-03 2013-04-09 F5 Networks, Inc. File system management with enhanced searchability
KR100843076B1 (ko) * 2006-07-18 2008-07-03 삼성전자주식회사 도메인 상태 정보 관리 시스템 및 방법
JP4819644B2 (ja) * 2006-10-12 2011-11-24 株式会社日立製作所 情報処理システム、情報処理方法、情報処理装置
US8682916B2 (en) 2007-05-25 2014-03-25 F5 Networks, Inc. Remote file virtualization in a switched file system
US8548953B2 (en) * 2007-11-12 2013-10-01 F5 Networks, Inc. File deduplication using storage tiers
US8180747B2 (en) 2007-11-12 2012-05-15 F5 Networks, Inc. Load sharing cluster file systems
US20090204705A1 (en) * 2007-11-12 2009-08-13 Attune Systems, Inc. On Demand File Virtualization for Server Configuration Management with Limited Interruption
US8117244B2 (en) 2007-11-12 2012-02-14 F5 Networks, Inc. Non-disruptive file migration
US20090204650A1 (en) * 2007-11-15 2009-08-13 Attune Systems, Inc. File Deduplication using Copy-on-Write Storage Tiers
US8352785B1 (en) 2007-12-13 2013-01-08 F5 Networks, Inc. Methods for generating a unified virtual snapshot and systems thereof
US8549582B1 (en) 2008-07-11 2013-10-01 F5 Networks, Inc. Methods for handling a multi-protocol content name and systems thereof
JP5251753B2 (ja) * 2009-06-24 2013-07-31 日本電気株式会社 端末、リクエスト送信方法、およびプログラム
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US9536222B2 (en) * 2009-12-28 2017-01-03 Sap Se Progress information in a service-oriented architecture
US8739166B2 (en) * 2009-12-28 2014-05-27 Sap Ag Progress-driven progress information in a service-oriented architecture
US8204860B1 (en) 2010-02-09 2012-06-19 F5 Networks, Inc. Methods and systems for snapshot reconstitution
US9195500B1 (en) 2010-02-09 2015-11-24 F5 Networks, Inc. Methods for seamless storage importing and devices thereof
US8707296B2 (en) 2010-04-27 2014-04-22 Apple Inc. Dynamic retrieval of installation packages when installing software
US8347100B1 (en) 2010-07-14 2013-01-01 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US9286298B1 (en) 2010-10-14 2016-03-15 F5 Networks, Inc. Methods for enhancing management of backup data sets and devices thereof
US8396836B1 (en) 2011-06-30 2013-03-12 F5 Networks, Inc. System for mitigating file virtualization storage import latency
US8463850B1 (en) 2011-10-26 2013-06-11 F5 Networks, Inc. System and method of algorithmically generating a server side transaction identifier
US9020912B1 (en) 2012-02-20 2015-04-28 F5 Networks, Inc. Methods for accessing data in a compressed file system and devices thereof
US9519501B1 (en) 2012-09-30 2016-12-13 F5 Networks, Inc. Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system
US9542172B2 (en) 2013-02-05 2017-01-10 Apple Inc. Automatic updating of applications
US10375155B1 (en) 2013-02-19 2019-08-06 F5 Networks, Inc. System and method for achieving hardware acceleration for asymmetric flow connections
US9554418B1 (en) 2013-02-28 2017-01-24 F5 Networks, Inc. Device for topology hiding of a visited network
US10157428B2 (en) * 2014-01-07 2018-12-18 Google Llc Offline content sharing
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10412198B1 (en) 2016-10-27 2019-09-10 F5 Networks, Inc. Methods for improved transmission control protocol (TCP) performance visibility and devices thereof
US10567492B1 (en) 2017-05-11 2020-02-18 F5 Networks, Inc. Methods for load balancing in a federated identity environment and devices thereof
US11223689B1 (en) 2018-01-05 2022-01-11 F5 Networks, Inc. Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof
US10833943B1 (en) 2018-03-01 2020-11-10 F5 Networks, Inc. Methods for service chaining and devices thereof
KR102627359B1 (ko) 2021-06-09 2024-01-18 이상훈 라이브 커머스가 가능한 전통시장용 상거래 시스템

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119151A (en) * 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
US5832218A (en) * 1995-12-14 1998-11-03 International Business Machines Corporation Client/server electronic mail system for providng off-line client utilization and seamless server resynchronization
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US5740370A (en) * 1996-03-27 1998-04-14 Clinton Battersby System for opening cache file associated with designated file of file server only if the file is not subject to being modified by different program
US5809242A (en) * 1996-04-19 1998-09-15 Juno Online Services, L.P. Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system
US5894554A (en) * 1996-04-23 1999-04-13 Infospinner, Inc. System for managing dynamic web page generation requests by intercepting request at web server and routing to page server thereby releasing web server to process other requests
US5867651A (en) * 1996-08-27 1999-02-02 International Business Machines Corporation System for providing custom functionality to client systems by redirecting of messages through a user configurable filter network having a plurality of partially interconnected filters
US5893116A (en) * 1996-09-30 1999-04-06 Novell, Inc. Accessing network resources using network resource replicator and captured login script for use when the computer is disconnected from the network
JPH10105481A (ja) * 1996-09-30 1998-04-24 Hitachi Ltd サービス仲介方法および装置
US6026474A (en) * 1996-11-22 2000-02-15 Mangosoft Corporation Shared client-side web caching using globally addressable memory
US5873100A (en) * 1996-12-20 1999-02-16 Intel Corporation Internet browser that includes an enhanced cache for user-controlled document retention
JP2001502821A (ja) * 1997-03-14 2001-02-27 ドメニコス,スティーヴン サーバに結合されているメモリ装置に格納されたアプリケーションプログラムを実行するシステムおよび方法
US6070184A (en) * 1997-08-28 2000-05-30 International Business Machines Corporation Server-side asynchronous form management
JPH11249874A (ja) * 1998-02-27 1999-09-17 Toshiba Corp コンピュータシステム、同システムにおける同期処理方法および記録媒体
JPH11249948A (ja) * 1998-02-27 1999-09-17 Toshiba Corp コンピュータシステム、同システムで使用されるファイルリソース切り替え方法および記録媒体
US6161185A (en) * 1998-03-06 2000-12-12 Mci Communications Corporation Personal authentication system and method for multiple computer platform
JPH11306151A (ja) * 1998-04-27 1999-11-05 Fujitsu Ltd 分散オブジェクト処理装置及びプログラム記憶媒体

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100377151C (zh) * 2005-03-11 2008-03-26 鸿富锦精密工业(深圳)有限公司 量测设备离线编程系统及方法
CN101741769B (zh) * 2008-11-25 2012-12-12 华为终端有限公司 一种网关和网页重定向的方法
CN102542233A (zh) * 2012-02-22 2012-07-04 北京人本幸福科技文化有限公司 网络信息获取方法及智能终端
CN103023901A (zh) * 2012-12-07 2013-04-03 北京网秦天下科技有限公司 移动终端的登录方法及登录系统
CN107517139A (zh) * 2016-06-17 2017-12-26 阿里巴巴集团控股有限公司 数据处理方法及系统、设备测试系统及节点测试系统
CN110971655A (zh) * 2018-10-01 2020-04-07 甲骨文国际公司 离线客户端重放和同步
CN110971655B (zh) * 2018-10-01 2022-09-30 甲骨文国际公司 离线客户端重放和同步

Also Published As

Publication number Publication date
GB2350452A (en) 2000-11-29
JP3457605B2 (ja) 2003-10-20
KR100362981B1 (ko) 2002-11-29
TW526426B (en) 2003-04-01
GB0001524D0 (en) 2000-03-15
JP2000231542A (ja) 2000-08-22
KR20000062465A (ko) 2000-10-25
US6757706B1 (en) 2004-06-29
CN1108578C (zh) 2003-05-14
GB2350452B (en) 2003-11-19

Similar Documents

Publication Publication Date Title
CN1108578C (zh) 为离线客户请求提供响应的方法及装置
CN1229715C (zh) 信息控制系统和信息处理方法
CN1095568C (zh) 命名书签组
CN1114157C (zh) 互联网访问计算机的网络传输数据的改写方法及其装置
CN1176432C (zh) 提供本国语言查询服务的方法和系统
CN1159645C (zh) 增强访问因特网服务器的计算机功能的代理服务器系统
CN1174330C (zh) 一种环球网浏览器系统
CN1107270C (zh) 计算机网络
RU2245577C2 (ru) Электронная доска объявлений и почтовый сервер
CN1176427C (zh) 显示Web文件的方法以及系统
CN1123836C (zh) 一种用于完成一环球网浏览器的请求的服务代理系统及其方法
CN1122928C (zh) 统一资源定位器的并行选择方法及其系统
JPH10162030A (ja) ハイパ−リンク情報をレンダするための方法及び装置
CN1196068C (zh) 信息提供系统
US6381567B1 (en) Method and system for providing real-time personalization for web-browser-based applications
CN1275161C (zh) 使用网络的文本文件阅览系统
US6963901B1 (en) Cooperative browsers using browser information contained in an e-mail message for re-configuring
CN1739100A (zh) 同步程序
CN101223524A (zh) 用于填充图形拓扑显示的计算机实现的方法
RU2628210C2 (ru) Активирование сервисных функций в рабочих приложениях
CN1697454A (zh) 信息处理方法和信息处理装置
CN1741532A (zh) 智能网框架装置
US20030177200A1 (en) Drag and drop web self-publishing system
US7847966B2 (en) Information processing system, printing device and content access system
US6829060B2 (en) Web-based imaging service providing manual duplexing

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: GOOGLE INC.

Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORP.

Effective date: 20120503

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120503

Address after: American California

Patentee after: Google Inc.

Address before: American New York

Patentee before: International Business Machines Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20030514

Termination date: 20170128

CF01 Termination of patent right due to non-payment of annual fee