自动填充方法、设备、浏览器、客户端设备及服务器与流程

文档序号:12733799阅读:420来源:国知局
自动填充方法、设备、浏览器、客户端设备及服务器与流程
本发明涉及网页的自动填充技术,更具体地,涉及一种用于在客户端进行自动填充的方法、一种用于在客户端进行自动填充的设备、一种浏览器、一种客户端设备和一种服务器。
背景技术
:随着诸如手机的客户端设备的不断普及与发展,使用客户端中的浏览器访问互联网,这逐渐成为一种趋势。随着HTML5技术的进步与普及,在诸如手机的小型客户端中,网页的内容展示也愈加多样化。能够通过网页处理的事情也越来越多,越来越方便,例如,收发邮件、访问各种论坛和网盘、进行网上购物等。出于安全及用户个性化的原因,这类页面通常需要用户登录来进行访问。在现有技术中,很多浏览器有自己的自动填充方案,或者内容提供者可以在发给用户页面中通过标准的自动填充方案设置自动填充的输入项目(自动填充标签)。但是,在现有技术中还存在许多问题,使得当用户初次访问的某个网站时无法使用这类自动填充资源。例如,一个内容提供者的网页通常不能另一个内容提供者的网页的资源。在这种情况下,当用户已经针对一个网页输入了自动填充数据时,他不能将这些自动填充数据用于另一个网页的自动填充,即使这两个网页中的至少部分填充内容是相同的。另外,在现有技术中,自动填充数据通常保存在客户端本地。在这种情况下,当用户使用不同的客户端进行登录时,他可能需要在每个客户端都重新输入自动填充数据。此外,在现有技术中,在将自动填充数据保存在网络服务器中的情况 下,客户端设备将需要填充的表单发送给服务器,以及服务器返回已经填充的表单。目前来说,由于需要在客户端设备和服务器之间传递表单并在服务器处理大量自动填充请求,这种方式的处理响应较慢。通常来说,对于网络登录/注册,除了用户名和密码之外,我们常常还需要输入地址、电话、姓名等个人信息。对于诸如手机、ipod的小型客户端设备来说,输入这些内容的操作尤其困难,这常常给用户带来不好的体验。例如,中国发明专利申请CN201210250031.3公开了一种基于云端分析的表单自动填充方法、系统和装置,它在此全部引入作为参考。例如,中国发明专利申请CN201210487173.1公开了一种浏览器用户的网络购物信息的使用方法、装置及浏览器,它在此全部引入作为参考。例如,中国发明专利申请CN200710143998.0公开了一种自动填充系统及自动填充注册或登录信息的方法,它在此全部引入作为参考。技术实现要素:本发明的一个目的是提供一种用于自动填充的新技术方案。根据本发明的第一方面,提供了一种用于在客户端进行自动填充的方法,包括:接收网页数据;检测到用于自动填充的输入项目;向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户;接收来自服务器的自动填充数据;以及使用所述自动填充数据在网页上根据所述输入项目进行自动填充。优选地,所述用户识别信息是用户手机号码。优选地,所述用户识别信息是用户成功登录客户端所使用的用户账号。优选地,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。优选地,所述方法还包括:接收来自服务器的经加密的第一哈希值,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;使用服务器的公钥对所述经加密的第一哈希值进行解密,以获得第一哈希值;计算所述自动填充数据的第二哈希值; 以及基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。优选地,所述方法还包括:检测用户输入的与所述输入项目对应的新自动填充数据;以及向服务器发送所述新自动填充数据。优选地,所述客户端是手机。根据本发明的第二方面,提供了一种服务器中的用于自动填充的方法,包括:接收用户识别信息;对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据;以及向客户端发送所述自动填充数据,其中,所述自动填充数据用于在客户端进行自动填充。优选地,所述用户识别信息是用户手机号码。优选地,所述用户识别信息是用户成功登录客户端所使用的用户账号。优选地,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。优选地,所述方法还包括:计算所述自动填充数据的第一哈希值;使用服务器的私钥对第一哈希值进行加密;以及向客户端发送经加密的第一哈希值,其中,所述第一哈希值用于验证所述自动填充数据的完整性。优选地,所述方法还包括:接收来自客户端的新自动填充数据;以及使用所述新自动填充数据更新服务器中存储的自动填充数据。优选地,所述客户端是手机。根据本发明的第三方面,提供了一种用于在客户端进行自动填充的设备,包括:用于接收网页数据的装置;用于检测到用于自动填充的输入项目的装置;用于向服务器发送用户识别信息的装置,其中,所述用户识别信息用于在服务器识别用户;用于接收来自服务器的自动填充数据的装置;以及用于使用所述自动填充数据在网页上根据所述输入项目进行自动填充的装置。优选地,所述用户识别信息是用户手机号码。优选地,所述用户识别信息是用户成功登录客户端所使用的用户账号。优选地,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。优选地,所述设备还包括:用于接收来自服务器的经加密的第一哈希 值的装置,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;用于使用服务器的公钥对所述经加密的第一哈希值进行解密以获得第一哈希值的装置;用于计算所述自动填充数据的第二哈希值的装置;以及用于基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。优选地,所述设备还包括:用于检测用户输入的与所述输入项目对应的新自动填充数据的装置;以及用于向服务器发送所述新自动填充数据的装置。优选地,所述客户端是手机。根据本发明的第四方面,提供了一种服务器中的用于自动填充的设备,包括:用于接收用户识别信息的装置;用于对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据的装置;以及用于向客户端发送所述自动填充数据的装置,其中,所述自动填充数据用于在客户端进行自动填充。优选地,所述用户识别信息是用户手机号码。优选地,所述用户识别信息是用户成功登录客户端所使用的用户账号。优选地,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。优选地,所述设备还包括:用于计算所述自动填充数据的第一哈希值的装置;用于使用服务器的私钥对第一哈希值进行加密的装置;以及用于向客户端发送经加密的第一哈希值的装置,其中,所述第一哈希值用于验证所述自动填充数据的完整性。优选地,所述设备还包括:用于接收来自客户端的新自动填充数据的装置;以及用于使用所述新自动填充数据更新服务器中存储的自动填充数据的装置。优选地,所述客户端是手机。根据本发明的第五方面,提供了一种浏览器,包括根据本发明的用于在客户端进行自动填充的设备。根据本发明的第六方面,提供了一种浏览器,被设计成用于执行如下 操作:接收网页数据;检测到用于自动填充的输入项目;向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户;接收来自服务器的自动填充数据;以及使用所述自动填充数据在网页上根据所述输入项目进行自动填充。根据本发明的第七方面,提供了一种客户端设备,包括根据本发明的浏览器。根据本发明的第八方面,提供了一种客户端设备,包括存储器和处理器,其中,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据本发明的用于在客户端进行自动填充的方法。根据本发明的第九方面,提供了一种服务器,包括根据本发明的服务器中的用于自动填充的设备。根据本发明的第十方面,提供了一种服务器,包括存储器和处理器,其中,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据本发明的服务器中的用于自动填充的方法。本发明的发明人发现,在现有技术中,自动填充表单本身被发送到服务器进行填充。然而,在本发明中,将自动填充数据发送到客户端进行填充,这可以有效提高处理性能。这样进行改进的技术任务或者所要解决的技术问题是本领域技术人员从未想到的或者没有预期到的,故本发明是一种新的技术方案。通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。附图说明被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。图1根据本发明的实施例的用于在客户端进行自动填充的方法的流程图。图2根据本发明的实施例的服务器中的用于自动填充的方法的流程图。图3是根据本发明的实施例的浏览器的示意性框图。图4是根据本发明的实施例的客户端设备的示意性框图。图5是根据本发明的实施例的服务器的示意性框图。图6是根据本发明的一个例子的通信系统的示意图。图7是根据本发明的一个例子的一个示意性网页页面。图8是根据本发明的一个例子的另一个示意性网页页面。具体实施方式现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1根据本发明的实施例的用于在客户端进行自动填充的方法的流程图。如图1所示,在步骤S1100,接收网页数据。在客户端,例如,在用户输入所要访问的网址之后,客户端(例如,客户端中的浏览器)接收到来自内容提供者的网页数据。该网页数据用于在客户端上显示网页。在步骤S1200,检测到用于自动填充的输入项目。输入项目可以是HTML标准中的输入(INPUT)标签。输入项目还可以是针对某种浏览器的标签。在这种情况下,一般来说,内容提供者会针对 该浏览器进行编程,并且,所述网页数据是针对该浏览器的网页数据。例如,所述浏览器可以是IE、Firefox、Google的Chrome、Safari等。客户端可以基于输入项目确定所要自动填充的元素。在步骤S1300,向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户。例如,所述用户识别信息是用户手机号码。这在客户端是手机的情况下是特别有利的。可以从手机系统中直接获取用户手机号码。服务器可以直接基于用户的手机号码来确定该用户的自动填充信息。此外,所述用户识别信息可以是用户成功登录客户端所使用的用户账号。在这种情况下,可以获取保存在客户端内的用户已成功登陆的网址与对应的用户名,作为用户识别信息。服务器在接收到所述用户识别信息后,识别出与该信息对应的自动填充数据,并将该数据返回给客户端。在步骤S1400,接收来自服务器的自动填充数据。在本发明中,客户端接收自动填充数据,并在客户端进行填充。相对于在服务器处理表单的现有技术,在本发明中,由客户端接收自动填充数据并执行自动填充,这样可以给客户端更多处理自由度。另一方面,本发明可以减小服务器的处理量,以及客户端等待服务器响应的时间。在一个例子中,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。这样,客户端在请求时只需提供用户识别信息,而不必提供具体需要填充的项目,以及服务器也不需要针对具体项目进行检索、分类。尽管可能会存在多余的自动填充数据,但是,这种方式简化了客户端和服务器的处理。本发明的发明人认识到,可能会存在如下情况。当服务器向客户端返回自动填充数据时,可能有欺骗者截取所述自动填充数据,并对所述数据进行修改,从而妨碍用户的正常使用。例如,用户的电子邮件地址是“zhang3@xxx.com”。欺骗者可以截取所述自动填充数据,并将其中的电子邮件地址修改为欺骗者的电子邮件地址“zhamg3@xxx.com”。由于这两个地址非常近似,因此,用户很难发现。可选地,欺骗者还可以对地址和/ 或联系电话等进行修改,以欺骗用户。在这种情况下,可能会给用户带来损失。例如,当用户通过网络购买商品后,商品可能会被发送给欺骗者。现有技术中尚未针对这种情况进行考虑。在本发明的一个例子中,针对这种情况,还提供了一种验证机制。服务器除了发送自动填充数据之外,还发送所述自动填充数据的哈希值。例如,在客户端,接收来自服务器的经加密的第一哈希值。所述第一哈希值是所述自动填充数据的哈希值。所述第一哈希值使用服务器的私钥被加密。接着,在客户端,使用服务器的公钥对所述经加密的第一哈希值进行解密,以获得第一哈希值。服务器可以事先将其公钥发送给客户端。在一个例子中,为了提高可信性,服务器可以将自己的数字证书发送给客户端,客户端根据所述数字证书获取服务器的公钥。在客户端,还计算所述自动填充数据的第二哈希值。然后,在客户端,基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。例如,可以比较第一哈希值和第二哈希值。如果二者一致,则可以使用所述自动填充数据;否则,不使用所述自动填充数据。在步骤S1500,使用所述自动填充数据在网页上根据所述输入项目进行自动填充。在一些情况下,用户不使用所述自动填充数据,而是输入新的数据。在这种情况下,在客户端,可以检测用户输入的与所述输入项目对应的新自动填充数据,并向服务器发送所述新自动填充数据,以更新服务器中的数据。在本发明中,用户的自动填充数据被保存在服务器,用户可以通过不同客户端来获取所述数据。例如,用户可以在诸如笔记本电脑的客户端输入数据,然后在诸如手机的小型客户端获取所述自动填充数据。这样可以简化用户在小型客户端上的输入操作,提高用户体验。因此,特别有利的是,所述客户端是手机。本领域技术人员应当理解,在电子
技术领域
中,可以通过软件、硬件以及软件和硬件结合的方式,将上述方法体现在产品中。本领域技术人员很容易基于上面公开的方法,产生一种用于在客户端进行自动填充的设备。该设备包括:用于接收网页数据的装置;用于检测到用于自动填充的输入 项目的装置;用于向服务器发送用户识别信息的装置,其中,所述用户识别信息用于在服务器识别用户;用于接收来自服务器的自动填充数据的装置;以及用于使用所述自动填充数据在网页上根据所述输入项目进行自动填充的装置。例如,所述用户识别信息是用户手机号码,或者所述用户识别信息是用户成功登录客户端所使用的用户账号。例如,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。在一个例子中,所述设备还可以包括:用于接收来自服务器的经加密的第一哈希值的装置,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;用于使用服务器的公钥对所述经加密的第一哈希值进行解密以获得第一哈希值的装置;用于计算所述自动填充数据的第二哈希值的装置;以及用于基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。在一个例子中,所述设备还可以包括:用于检测用户输入的与所述输入项目对应的新自动填充数据的装置;以及用于向服务器发送所述新自动填充数据的装置。本领域技术人员应当明白,可以通过各种方式来实现上述装置。例如,可以通过指令配置处理器来实现上述装置。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现上述装置。例如,可以将上述装置固化到专用器件(例如ASIC)中。可以将上述装置分成相互独立的单元,或者可以将它们合并在一起实现。上述装置可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。对于本领域技术人员来说,这些实施方式都是等价的。所述用于在客户端进行自动填充的设备可以是一个独立的设备(例如,客户端中的应用),也可以被集成在浏览器中,成为浏览器的一部分。图3是根据本发明的实施例的浏览器的示意性框图。一般来说,浏览器从架构上可以分为两个部分,即内核和外壳。浏览器内核负责对网页语法的解释(如HTML、JavaScript)并渲染(显示)网 页,即浏览器通过内核对网页进行解析和渲染。浏览器外壳主要处理浏览器外观界面、操控体验。在图3中,浏览器3000包括内核3010和外壳3020。浏览器3000还包括自动填充设备3030。自动填充设备3030是根据本发明的用于在客户端进行自动填充的设备。尽管为了清楚起见,在图3中,自动填充设备3030在外壳3020和内核3010之外,但是,本领域技术人员应当理解,自动填充设备3030可以位于外壳3020或内核3010内。本领域技术人员公知的是,随着诸如大规模集成电路技术的电子信息技术的发展和软件硬件化的趋势,要明确划分计算机系统软、硬件界限已经显得比较困难了。因为,任何操作可以软件来实现,也可以由应当来实现。任何指令的执行可以由硬件完成,同样也可以由软件来完成。对于某一机器功能采用硬件实现方案还是软件实现方案,取决于价格、速度、可靠性、存储容量、变更周期等非技术性因素。因此,对于电子信息
技术领域
的普通技术人员来说,更为直接和清楚地描述一个技术方案的方式是描述该方案中的各个操作。在知道所要执行的操作的情况下,本领域技术人员可以基于对所述非技术性因素的考虑直接设计出期望的产品。从这个方面来说,在这个实施例中,还提供了一种浏览器,该浏览器被设计成用于执行根据本发明的方法中的各个操作。例如,该浏览器被设计成用于接收网页数据;检测到用于自动填充的输入项目;向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户;接收来自服务器的自动填充数据;以及使用所述自动填充数据在网页上根据所述输入项目进行自动填充。优选地,该浏览器还被设计成用于接收来自服务器的经加密的第一哈希值,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;使用服务器的公钥对所述经加密的第一哈希值进行解密,以获得第一哈希值;计算所述自动填充数据的第二哈希值;以及基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。在一个实施例中,可以将根据本发明的浏览器,例如浏览器3000,设置在客户端设备中,以实现本发明的技术方案。图2根据本发明的实施例的服务器中的用于自动填充的方法的流程图。如图2所示,在步骤S2100,接收用户识别信息。例如,所述用户识别信息是用户手机号码,或者所述用户识别信息是用户成功登录客户端所使用的用户账号。在步骤S2200,对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据。在步骤S2300,向客户端发送所述自动填充数据。所述自动填充数据用于在客户端进行自动填充。例如,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。在一个例子中,为了使得客户端能够验证自动填充数据的完整性,所述服务器中的用于自动填充的方法还包括:计算所述自动填充数据的第一哈希值;使用服务器的私钥对第一哈希值进行加密;以及向客户端发送经加密的第一哈希值,其中,所述第一哈希值用于验证所述自动填充数据的完整性。在另一个例子中,为了更新服务器中的数据,所述服务器中的用于自动填充的方法还包括:接收来自客户端的新自动填充数据;以及使用所述新自动填充数据更新服务器中存储的自动填充数据。如前面所述讨论的那样,本领域技术人员很容易基于上面公开的方法,产生一种服务器中的用于自动填充的设备,包括:用于接收用户识别信息的装置;用于对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据的装置;以及用于向客户端发送所述自动填充数据的装置,其中,所述自动填充数据用于在客户端进行自动填充。例如,所述用户识别信息是用户手机号码,或者所述用户识别信息是用户成功登录客户端所使用的用户账号。例如,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。在一个例子中,为了使得客户端能够验证自动填充数据的完整性,所述设备还包括:用于计算所述自动填充数据的第一哈希值的装置;用于使用服务器的私钥对第一哈希值进行加密的装置;以及用于向客户端发送经 加密的第一哈希值的装置,其中,所述第一哈希值用于验证所述自动填充数据的完整性。在另一个例子中,为了更新服务器中的数据,所述设备还包括:用于接收来自客户端的新自动填充数据的装置;以及用于使用所述新自动填充数据更新服务器中存储的自动填充数据的装置。本领域技术人员应当明白,可以通过各种方式来实现上述装置。例如,可以通过指令配置处理器来实现上述装置。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现上述装置。例如,可以将上述装置固化到专用器件(例如ASIC)中。可以将上述装置分成相互独立的单元,或者可以将它们合并在一起实现。上述装置可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。对于本领域技术人员来说,这些实施方式都是等价的。所述服务器中的用于自动填充的设备可以被设置在服务器中,用于实现根据本发明的技术方案。图4是根据本发明的实施例的客户端设备的示意性框图。图4中的客户端设备4000例如是手机、iPod等。如图4所示,客户端设备4000可以包括处理器4010、存储器4020、接口装置4030、通信装置4040、显示装置4050、输入装置4060、扬声器4070、麦克风4080,等等。处理器4010例如可以是中央处理器CPU、微处理器MCU等。存储器4020例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置4030例如包括USB接口、耳机接口等。通信装置4040例如能够进行有有线或无线通信。显示装置4050例如是液晶显示屏、触摸显示屏等。输入装置4060例如可以包括触摸屏、键盘等。用户可以通过扬声器4070和麦克风4080输入/输出语音信息。图4所示的电子设备仅是解释性的,并且决不是为了要限制本发明、其应用或用途。在这个实施例中,所述存储器4020用于存储指令,所述指令用于控制所述处理器4010进行操作以执行图1所示的用于在客户端进行自动填充的方法。本领域技术人员应当理解,尽管在图4中示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,处理器4010和存储装置4020等。技术人员可以根据本发明所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。图5是根据本发明的实施例的服务器的示意性框图。服务器5000例如可以是刀片服务器等。在一个例子中,服务器5000可以是一台计算机。在另一个例子中,服务器5000可以具有图4所示的结构。如图5所示,服务器5000可以包括处理器5010、存储器5020、接口装置5030、通信装置5040、显示装置5050、输入装置5060。尽管服务器也可以包括扬声器、麦克风2080、等等,但是,这些部件与本发明无关,故在此省略。处理器5010例如可以是中央处理器CPU、微处理器MCU等。存储器5020例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置5030例如包括USB接口、串行接口等。通信装置5040例如能够进行有有线或无线通信。显示装置5050例如是液晶显示屏。输入装置5060例如可以包括触摸屏、键盘等。图5所示的电子设备仅是解释性的,并且决不是为了要限制本发明、其应用或用途。在这个实施例中,所述存储器5020用于存储指令,所述指令用于控制所述处理器5010进行操作以执行图2所示的服务器中的用于自动填充的方法。本领域技术人员应当理解,尽管在图5中示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,处理器5010和存储装置5020等。技术人员可以根据本发明所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。图6是根据本发明的一个例子的通信系统的示意图。在通信系统6000中,服务器6010、内容提供者6020-1、6020-2和客户端6030-1、6030-2通过网络6040进行通信。当用户使用客户端6030-1访问第一网站时,客户端6030-1从内容提供者6020-1接收网页数据。网页数据的例子如下:***********************<labelfor="enterAddressFullName"class=""><b>姓名</b></label><inputtype="text"name="enterAddressFullName"id="enterAddressFullName"class="enterAddressFormField"size="20"maxlength="50"use="browser-input-name"><labelfor="enterAddressAddressLine1"class=""><b>街道地址</b></label><inputtype="text"name="enterAddressAddressLine1"id="enterAddressAddressLine1"class="enterAddressFormField"size="45"maxlength="60"use="browser-input-address"><labelfor="enterAddressPostalCode"class=""><b>邮政编码</b></label><inputtype="text"name="enterAddressPostalCode"id="enterAddressPostalCode"class="enterAddressFormField"size="20"maxlength="20"use="browser-input-postal"><labelfor="enterAddressPhoneNumber"class=""><b>联系电话</b></label><inputtype="text"name="enterAddressPhoneNumber"id="enterAddressPhoneNumber"class="enterAddressFormField"size="20"maxlength="20"use="browser-input-telephone">***********************客户端6030-1检测到用于自动填充的输入项目。输入项目是不同输入信息的标记符号。它可以是HTML标准中的标签或者是浏览器指定的标签。网页数据中的输入项目(标记符号)如下:名称标记符号姓名browser-input-name街道地址browser-input-address邮政编码browser-input-postal联系电话browser-input-telephone客户端6030-1向服务器发送用户识别信息。所述用户识别信息用于在服务器识别用户,例如是手机号、或用户成功登录客户端所使用的用户账号(包含对应的网址信息)。服务器6010在接收到用户识别信息,根据用户识别信息获取对应的自动填充数据。由于用户首次在网上提交信息,因此,服务器6010没有返回数据。在这里,客户端6030-1例如是笔记本电脑,用户可以方便地使用笔记本电脑输入数据。在上述网页数据的页面上填入数据的情况如图7所示。所填入的数据是新自动填充数据。客户端6030-1向服务器6010发送所述新自动填充数据。所述新自动填充数据例如是:服务器6010接收并存储所述数据。接着,该用户使用客户端6030-2访问第二网站。客户端6030-2从内容提供者6020-2接收网页数据。例如,该网页数据如下:***********************<spanclass="label"><spanstyle="color:red">*</span>&nbsp;收货人:</span><inputtype="text"class="itxt"id="consignee_name"name="consigneeParam.name"maxlength="20"value=""tabindex="1"use="browser-input-name"><spanclass="label"id="address_div"><spanstyle="color:red">*</span>&nbsp;详细地址:</span><inputtype="text"class="itxtitxt02"id="consignee_address"name="consigneeParam.address"maxlength="50"onblur="check_Consignee('address_div')"value=""tabindex="6"use="browser-input-address"><spanclass="label"><spanstyle="color:red">*</span>&nbsp;手机号码:</span><inputtype="text"class="itxt"id="consignee_mobile"name="consigneeParam.mobile"onblur="check_Consignee('call_mobile_div')"onfocus="if(value==defaultValue){value=”;}"maxlength="11"value=""tabindex="7"use="browser-input-telephone"><spanclass="label">邮箱:</span><inputtype="text"class="itxt"id="consignee_email"name="consigneeParam.email"maxlength="50"onblur="check_Consignee('email_div')"value=""onfocus="if(value==defaultValue){value=”;}"tabindex="9"use="browser-input-email">***********************网页数据中的输入项目(标记符号)如下:名称标记符号收货人browser-input-name详细地址browser-input-address邮箱browser-input-email手机号码browser-input-telephone客户端6030-2例如是手机,它使用当前的手机号码向服务器6010请求自动填充数据。可选地,例如,用户在客户端6030-2已经登录过第一网站,以及客户端也可以使用第一网站的用户账号(包含对应的网址信息)向服务器请求自动填充数据。服务器6010返回自动填充数据,例如,图7中填充的数据。客户端6030-2还从服务器6010接收经加密的第一哈希值。该第一哈希值是所述自动填充数据的哈希值,以及它使用服务器的私钥被加密。客户端6030-2使用服务器的公钥对所述经加密的第一哈希值进行解密,以获得第一哈希值。接着,客户端6030-2计算所述自动填充数据的第二哈希值并基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。当验证完成时,客户端6030-2确定可以使用所述自动填充数据。如图8所示,当用户聚焦到“收货人”项时,提供自动填充数据“张三”。在图8中,用户输入了新的数据:客户端6030-2将该新数据发送给服务器6010。服务器6010使用所述新数据更新自动填充数据,如下:通过上面的描述,可以知道本发明至少包括如下几个方面的内容。E1.一种用于在客户端进行自动填充的方法,包括:接收网页数据;检测到用于自动填充的输入项目;向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户;接收来自服务器的自动填充数据;以及使用所述自动填充数据在网页上根据所述输入项目进行自动填充。E2.根据E1所述的方法,其中,所述用户识别信息是用户手机号码。E3.根据E1或E2所述的方法,其中,所述用户识别信息是用户成功登录客户端所使用的用户账号。E4.根据E1-E3中任何一个所述的方法,其中,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。E5.根据E1-E4中任何一个所述的方法,还包括:接收来自服务器的经加密的第一哈希值,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;使用服务器的公钥对所述经加密的第一哈希值进行解密,以获得第一哈希值;计算所述自动填充数据的第二哈希值;以及基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。E6.根据E1-E5中任何一个所述的方法,还包括:检测用户输入的与所述输入项目对应的新自动填充数据;以及向服务器发送所述新自动填充数据。E7.根据E1-E6中任何一个所述的方法,其中,所述客户端是手机。E8.一种服务器中的用于自动填充的方法,包括:接收用户识别信息;对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据;以及向客户端发送所述自动填充数据,其中,所述自动填充数据用于在客户端进行自动填充。E9.根据E8所述的方法,其中,所述用户识别信息是用户手机号码。E10.根据E8-E9中任何一个所述的方法,其中,所述用户识别信息是用户成功登录客户端所使用的用户账号。E11.根据E8-E10中任何一个所述的方法,其中,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。E12.根据E8-E11中任何一个所述的方法,还包括:计算所述自动填充数据的第一哈希值;使用服务器的私钥对第一哈希值进行加密;以及向客户端发送经加密的第一哈希值,其中,所述第一哈希值用于验证所述自动填充数据的完整性。E13.根据E8-E12中任何一个所述的方法,还包括:接收来自客户端的新自动填充数据;以及使用所述新自动填充数据更新服务器中存储的自动填充数据。E14.根据E8-E13中任何一个所述的方法,其中,所述客户端是手机。E15.一种用于在客户端进行自动填充的设备,包括:用于接收网页数据的装置;用于检测到用于自动填充的输入项目的装置;用于向服务器发送用户识别信息的装置,其中,所述用户识别信息用于在服务器识别用户;用于接收来自服务器的自动填充数据的装置;以及用于使用所述自动填充数据在网页上根据所述输入项目进行自动填充的装置。E16.根据E15所述的设备,其中,所述用户识别信息是用户手机号码。E17.根据E15或E16所述的设备,其中,所述用户识别信息是用户成功登录客户端所使用的用户账号。E18.根据E15-E17中任何一个所述的设备,其中,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。E19.根据E15-E18中任何一个所述的设备,还包括:用于接收来自服务器的经加密的第一哈希值的装置,其中,所述第一哈希值是所述自动填充数据的哈希值,以及所述第一哈希值使用服务器的私钥被加密;用于使用服务器的公钥对所述经加密的第一哈希值进行解密以获得第一哈希值的装置;用于计算所述自动填充数据的第二哈希值的装置;以及用于基于第一哈希值和第二哈希值验证所述自动填充数据的完整性。E20.根据E15-E19中任何一个所述的设备,还包括:用于检测用户输入的与所述输入项目对应的新自动填充数据的装置;以及用于向服务器 发送所述新自动填充数据的装置。E21.根据E15-E20中任何一个所述的设备,其中,所述客户端是手机。E22.一种服务器中的用于自动填充的设备,包括:用于接收用户识别信息的装置;用于对所述用户识别信息进行识别,以确定与所述用户识别信息对应的自动填充数据的装置;以及用于向客户端发送所述自动填充数据的装置,其中,所述自动填充数据用于在客户端进行自动填充。E23.根据E22所述的设备,其中,所述用户识别信息是用户手机号码。E24.根据E22或E23所述的设备,其中,所述用户识别信息是用户成功登录客户端所使用的用户账号。E25.根据E22-E24中任何一个所述的设备,其中,所述自动填充数据包括与所述用户识别信息对应的全部自动填充数据。E26.根据E22-E25中任何一个所述的设备,还包括:用于计算所述自动填充数据的第一哈希值的装置;用于使用服务器的私钥对第一哈希值进行加密的装置;以及用于向客户端发送经加密的第一哈希值的装置,其中,所述第一哈希值用于验证所述自动填充数据的完整性。E27.根据E22-E26中任何一个所述的设备,还包括:用于接收来自客户端的新自动填充数据的装置;以及用于使用所述新自动填充数据更新服务器中存储的自动填充数据的装置。E28.根据E22-E27中任何一个所述的设备,其中,所述客户端是手机。E29.一种浏览器,包括根据E15-E21中任何一个所述的用于在客户端进行自动填充的设备。E30.一种浏览器,被设计成用于执行如下操作:接收网页数据;检测到用于自动填充的输入项目;向服务器发送用户识别信息,其中,所述用户识别信息用于在服务器识别用户;接收来自服务器的自动填充数据;以及使用所述自动填充数据在网页上根据所述输入项目进行自动填充。E31.一种客户端设备,包括根据E29或E30所述的浏览器。E32.一种客户端设备,包括存储器和处理器,其中,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据E1-E7中任何一个所述的方法。E33.一种服务器,包括根据E22-E28中任何一个所述的用于自动填充的设备。E34.一种服务器,包括存储器和处理器,其中,所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行根据E8-E14中任何一个所述的方法。本发明可以是设备、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所 述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法 和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本
技术领域
的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本
技术领域
的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1